J'ai un scénario délicat par lequel je veux ajouter ScriptManager ScriptReference uniquement sur certaines conditions comme suitAjout de scripts à ScriptManager à la condition
<asp:ScriptManagerProxy ID="scriptManagerProxy1" runat="server">
<CompositeScript>
<Scripts>
<asp:ScriptReference path=/...." />
</Scripts>
</CompositeScript>
<asp:ScriptManagerProxy>
Je veux faire cette référence de script à condition spécifique, donc j'agirent comme ci-dessous
<% if(xyzclass.property)
{ %>
above code
<% } %>
Une fois que je le fais, je reçois l'erreur comme
The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).
Je googlé et essayé d'ajouter « # » comme <% # mais en ajoutant « # » il ne peut pas trouver la classe (xyzclass) et ainsi obtenir l'erreur
Expected class, delegate, enum, interface, or struct
J'ai essayé de faire le travail mentionné ici aussi http://leedumond.com/blog/the-controls-collection-cannot-be-modified-because-the-control-contains-code-blocks/
Pas de chance jusqu'à présent. Si je prends l'approche comme mentionné dans le lien ci-dessus, il dit quelque chose comme
The base class includes the field '', but its type (System.Web.UI.ScriptManagerProxy) is not compatible with the type of control (System.Web.UI.ScriptManager).
Les gars, ce que je besoin est juste d'ajouter des scripts via ScriptManager SEULEMENT dynamiquement. Y a-t-il un moyen qui soit pratique dans la pratique?
Merci à l'avance,
Nimesh
Salut Mate, Déjà fait mais ne fonctionne pas aussi. Quand j'ai fait ScriptManger1.CompositeScript.Scripts.Add (item), ne fonctionne pas. Le script n'est pas chargé sur la page Web. Utilisé Firebug pour voir si les scripts sont présents dans ScriptReference. – DotNetInfo
Ajout d'un contrôle ScriptManagerProxy particulier sur la page a travaillé pour moi. – DotNetInfo