Je rencontre des problèmes pour obtenir les arguments de l'événement de commande après le second clic en utilisant le code ci-dessous. Donc quand je clique sur un bouton, et que je crée un nouveau bouton pour remplacer celui qui était là, je perds l'état de vue au prochain clic sur le bouton.Problème lors de l'obtention de commandeventargs dans l'événement de commande après la création de contrôles dans la publication
Des suggestions sur ce que je dois faire pour que cela fonctionne? Je ne peux pas modifier de manière significative la structure car je dois générer un nombre variable de boutons totalement non liés dans le gestionnaire de commandes.
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
LinkButton btn = new LinkButton();
btn.ID = "btn1";
this.Panel1.Controls.Add(btn);
btn.Command += new CommandEventHandler(myLinkButton_Command);
}
else
{
LinkButton btn = new LinkButton();
btn.ID = "btn1";
this.Panel1.Controls.Add(btn);
btn.Text = "My Button 1";
btn.CommandArgument = "1";
btn.Command += new CommandEventHandler(myLinkButton_Command);
}
}
void myLinkButton_Command(object sender, CommandEventArgs e)
{
int newArg = Convert.ToInt32(e.CommandArgument) + 1;// empty string on second mouse click
this.Panel1.Controls.Clear();
LinkButton myLinkButton = new LinkButton();
myLinkButton.ID = "btn1";
this.Panel1.Controls.Add(myLinkButton);
myLinkButton.Text = "My Button " + newArg.ToString();
myLinkButton.CommandArgument = newArg.ToString();
}
}
merci - je ne pense pas que j'aurais jamais pensé à cela. J'espère que cela ressemble à ce qui se passe dans mon vrai projet. – dice