Hvordan bruger man events i usercontrols?
Hej,Jeg har en .aspx side, der loader et antal .ascx sider dynamisk. Disse .ascx sider har nogle events, som jeg ønsker at kalde. Mit problem er, at de bare ikke bliver kaldt.
Dette er koden i .ascx:
Min event:
public event System.EventHandler Click;
protected virtual void OnClick(EventArgs e)
{
if (Click != null)
{
Click(this, e);
}
}
Min button_click:
private void btnShowClass_Click(object sender, System.EventArgs e)
{
if (!Show)
{
lblHistory.Visible = true;
tblHistory.Visible = true;
btnShowDetail.Visible = true;
Show = true;
}
else
{
Show = false;
lblHistory.Visible = false;
lblDetail.Visible = false;
btnShowHistory.Visible = false;
btnShowDetail.Visible = false;
tblHistory.Visible = false;
tblDetail.Visible = false;
}
OnClick(e);
}
initializeComponent:
this.btnShowClass.Click += new System.EventHandler(this.btnShowClass_Click);
this.Load += new System.EventHandler(this.Page_Load);
Dette er koden i min .aspx:
private Control ctlForm;
page_load:
ctlForm = Page.FindControl("Form1");
Min metode, der genererer dashboard usercontrols dynamisk(noget kode udeladt):
private void showDashboard(int group_id)
{
c1 = new Control();
c1 = LoadControl("dashboard.ascx");
((Dashboard)c1).Click+= new EventHandler(dashboard_Click);
ctlForm.Controls.Add(c1);
}
private void dashboard_Click(object sender, System.EventArgs e)
{
con = new OracleConnection(conStr);
con.Open();
dashboard.populateTables(con);
showReports(group_id);
con.Close();
}
Håber der er nogen der kan hjælpe mig :)
