Ik zit met een ASP.NET probleem waar ik niet uit kom.
Ik heb een composite control met daarin een button en een eventhandler (en nog veel meer, maar dat doet er even niet toe).
Als ik deze composite control als childcontrol in een webpart opneem en de webpart in een pagina zet, wordt de code in de eventhandler uitgevoerd..
Als ik dezelfde composite control als childcontrol in een andere composite control opneem en deze andere composite control in een webpart opneem en de webpart in een pagina zet, wordt de code in de eventhandler niet uitgevoerd.
Code:
composite control 1:
composite control 2:
web part 1 - eventhandler wordt niet uitgevoerd
Lijkt me vrij basic toch, maar wat is het verschil en wat gaat er fout?
Ik heb een composite control met daarin een button en een eventhandler (en nog veel meer, maar dat doet er even niet toe).
Als ik deze composite control als childcontrol in een webpart opneem en de webpart in een pagina zet, wordt de code in de eventhandler uitgevoerd..
Als ik dezelfde composite control als childcontrol in een andere composite control opneem en deze andere composite control in een webpart opneem en de webpart in een pagina zet, wordt de code in de eventhandler niet uitgevoerd.
Code:
composite control 1:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| public class TestControl1 : CompositeControl, INamingContainer { protected Button submitButton; protected override void CreateChildControls() { base.CreateChildControls(); submitButton = new Button(); submitButton.Click +=new EventHandler(submitButton_Click); this.Controls.Add(submitButton); } protected void submitButton_Click(object sender, EventArgs e) { // do something } } |
composite control 2:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
| public class TestControl2 : CompositeControl, INamingContainer { protected override void CreateChildControls() { base.CreateChildControls(); foreach (a in b) // dynamisch childcontrols aanmaken { TestControl1 yControl = new TestControl1(); yControl.ID = ietsUnieks.ToString(); this.Controls.Add(yControl); } } } |
web part 1 - eventhandler wordt niet uitgevoerd
C#:
1
2
3
4
5
6
7
8
9
10
11
| public class MyWebPart : System.Web.UI.WebControls.WebParts.WebPart { protected TestControl2 zControl; protected override void CreateChildControls() { base.CreateChildControls(); zControl = new TestControl2(); this.Controls.Add(zControl); } } |
Lijkt me vrij basic toch, maar wat is het verschil en wat gaat er fout?
Apparticle SharePoint | Apps | Articles