Problème d'évènement avec Uc ajouté dynamiquement
Bonjour,
malgré ce post je n'arrive pas à obtenir le déclenchement de mon évènement.
J'ai besoin d'un peu d'aide pour comprendre le fonctionnement et votre avis sur la méthode utilisée.
Dans ma page se trouve un PlaceHolder dans lequel j'ajoute un WebUserControl.
Ce WUC possède une dizaine de bouton qui devrait déclencher un évènement sur la page maître.
Quand mon WUC était défini dans la page en tant que "balise", l'évènement était bien déclenché, maintenant ce n'est plus le cas...
Voici mon code :
WUC :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
public partial class WUCResume : System.Web.UI.UserControl
{
#region delegates
public event EventHandler btnRunStep1Click;
public event EventHandler btnRunStep2Click;
#endregion
protected void btnRunStep1_Click(object sender, EventArgs e)
{
btnRunStep1Click(sender, e);
}
protected void btnRunStep2_Click(object sender, EventArgs e)
{
btnRunStep2Click(sender, e);
} |
et maintenant le code de ma page :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
public partial class mypage: Page
{
protected WUCResume ucResume;
protected void Page_Load(object sender, EventArgs e)
{
ucResume = (WUCResume)LoadControl("WUCResume.ascx");
ucResume.ID = "myUcResume";
ucResume.btnRunStep1Click += btnRunStep1_Click;
ucResume.btnRunStep2Click += btnRunStep2_Click;
if (!IsPostBack)
{
//clear the placeholder
phContent.Controls.Clear();
phContent.Controls.Add(ucResume);
}
}
protected void btnRunStep1_Click(object sender, EventArgs e)
{
.................
}
protected void btnRunStep2_Click(object sender, EventArgs e)
{
...............
} |
j'ai essayé de mettre l'initialisation des evenement dans le page load, dans le page_init mais ca n'a rien changé.
j'ai essayé de récupérer le WUC si je ne suis pas dans le postback mais le placeholder est vide :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
if (!IsPostBack)
{
//clear the placeholder
phContent.Controls.Clear();
ucResume = (WUCResume)LoadControl("WUCResume.ascx");
ucResume.ID = "myUcResume";
phContent.Controls.Add(ucResume);
}
else
{
ucResume = (WUCResume)phContent.FindControl("myUcResume");
ucResume.btnRunStep1Click += btnRunStep1_Click;
ucResume.btnRunStep2Click += btnRunStep2_Click;
} |
Est ce que qqun pourrait donc m'aider s'il vous plait a comprendre et trouver une solution à mes évènements.
Merci