Hoi,
Probleem
Ik maak een ASP .NET project. Hier heb ik bijvoorbeeld een eigen usercontrol gemaakt die met een propertie een x aantal knoppen genereerd.
Nu wil ik dat ik als ik op zo'n dynamisch aangemaakte knop klik, het event van de usercontrol af gaat met als event argument de knop ID. Dit lukt dus niet.
Wat heb ik al geprobeerd
Gezocht op internet, gevraagd aan iedereen, en deze code bedacht ( die niet werkt ):
Belangrijk deel van het usercontrol:
Dit maakt dus x knoppen aan, die als er op wordt geklikt volgens mij toch de control event KnopGeklikt uit moet voeren.
Ik heb op de ASPX een HTML button met event gemaakt + het control om er voor te zorgen dat ook de __doPostBack wordt aangemaakt.
Als ik nu op een knop klik krijg ik wel een postback, maar hij komt nooit in het KnopGeklikt event.
Ik heb ook nog:
En wat andere dingen geprobeerd, maar het event gaat niet af. Als ik op internet zoek lijkt het wel alsof ik de enige ben die dit probeert te bereiken.
Hoop dat iemand wat weet.
Probleem
Ik maak een ASP .NET project. Hier heb ik bijvoorbeeld een eigen usercontrol gemaakt die met een propertie een x aantal knoppen genereerd.
Nu wil ik dat ik als ik op zo'n dynamisch aangemaakte knop klik, het event van de usercontrol af gaat met als event argument de knop ID. Dit lukt dus niet.
Wat heb ik al geprobeerd
Gezocht op internet, gevraagd aan iedereen, en deze code bedacht ( die niet werkt ):
Belangrijk deel van het usercontrol:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| public delegate void KnopKlikHandler(string knopID);
public event KnopKlikHandler KnopGelikt;
protected override void Render(HtmlTextWriter output)
{
for( int knopTeller = 0; knopTeller<Aantal;knopTeller++)
{
output.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Input);
output.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Type, "button" );
output.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Id, ClientID + "Knop" + knopTeller.ToString());
output.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Name, ClientID + "Knop" + knopTeller.ToString());
output.AddAttribute("onclick", "__doPostBack('" + ClientID + "', 'KnopGelikt')");
output.AddAttribute(System.Web.UI.HtmlTextWriterAttribute.Value, "Knop " + knopTeller.ToString() );
output.RenderEndTag();
}
} |
Dit maakt dus x knoppen aan, die als er op wordt geklikt volgens mij toch de control event KnopGeklikt uit moet voeren.
Ik heb op de ASPX een HTML button met event gemaakt + het control om er voor te zorgen dat ook de __doPostBack wordt aangemaakt.
Als ik nu op een knop klik krijg ik wel een postback, maar hij komt nooit in het KnopGeklikt event.
Ik heb ook nog:
code:
1
| output.AddAttribute("onclick", "__doPostBack('" + ClientID + "_KnopGeklikt', 'KnopID'" + knopTeller.ToString() + ")"); |
En wat andere dingen geprobeerd, maar het event gaat niet af. Als ik op internet zoek lijkt het wel alsof ik de enige ben die dit probeert te bereiken.
Hoop dat iemand wat weet.