Reaktion auf Schaltflächenbefehle in einem Web Usercontrol in einem ASP.NET -Repeater
-
26-10-2019 - |
Frage
Ich habe einen ASP.NET -Repeater, dessen ItemTemplate ein WebuScontrol namens ProviderControl ist.
<asp:Repeater ID="rep" runat="server" OnItemDataBound="rep_ItemDataBound">
<ItemTemplate>
<custom:ProviderControl ID="row" runat="server" />
</ItemTemplate>
</asp:Repeater>
Ich bevölkern die benutzerdefinierte Steuerung mit Daten in der ItemDataBound
Veranstaltung.
In der Bedienung des Anbieters habe ich zwei Tasten, auf die ich auf der Seite enthält. Ich weiß, dass es Befehle und Befehlsargumente gibt, aber wie würde ich das machen?
Oder gibt es einen einfacheren Weg, als Befehle zu verwenden?
Lösung
Sie müssen umgehen ItemCommand
Veranstaltung von "Repeater".
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
Button btn = e.CommandSource as Button;
Response.Write(btn.ID);
}
Andere Tipps
Der beste Weg wäre, benutzerdefinierte Veranstaltungen in Ihrem zu bieten UserControl
Für jedes Schaltflächen-Klick-Ereignis. Das UserControl
wird erhöht und die Seite kann sie verarbeiten.
http://www.codeprroject.com/articles/8797/mastering-page-uercontrol-communication#4.3