Avatar billede gobbe23 Nybegynder
03. december 2004 - 09:36

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 :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester