Cela devrait vraiment être beaucoup plus facile, je dois donc manquer quelque chose d'évident. J'ai une page C# ASP.NET qui est activée par AJAX. J'ai également un panneau ASP.NET qui est initialement vide mais je crée quelques listes déroulantes et les ajoute dans le code derrière. Cette partie fonctionne très bien. Cependant, lorsque la page fait une publication, les contrôles "disparaissent" et je ne peux pas les trouver du tout. Notez que le panneau lui-même n'est pas dans un panneau de mise à jour AJAX, je le mentionne seulement parce que je pense que cela pourrait être un problème viewstate.C# & AJAX - Ajouter des contrôles dynamiquement mais ne peut pas les trouver sur la publication
Ce code fonctionne très bien:
DropDownList newList = new DropDownList();
newList.ID = string.Format("lst{0}", opt.OptionName.ToString());
foreach (SaleItemOptions myOpt in opt.OptionsInList)
{
newList.Items.Add(myOpt.OptionName);
}
this.pnlOptions.Controls.Add(newList);
Mais ce code renvoie toujours NULL
DropDownList myList = (DropDownList)this.pnlOptions.FindControl("lstSize");
J'ai vérifié que le nom de contrôle existe sous la forme et j'ai aussi utilisé des variations comme le ControlID, l'ID, etc.
De plus, il y a un facteur atténuant dans tout cela. J'utilise l'API GCheckout (Google Checkout pour ASP.NET) pour créer la publication. Cela ne devrait vraiment pas être un problème, mais je pensais que je le mentionnerais
Pour cette raison, j'aime beaucoup MVC. – 7wp
@Roberto, oui MVC rend cela plus facile et je suggère à l'OP de le regarder ici: http://www.asp.net/mvc/whatisaspmvc – Justin