Comment reconnaître le nom de commande d'un linkbutton à l'intérieur d'un itemTemplate af a radlistbox
-
14-11-2019 - |
Question
J'ai ajouté un itemTemplate à mon radlistbox et j'ai également ajouté une étiquette et deux linkbutton (s) dedans ...
mon radlistbox est comme ci-dessous:
<telerik:RadListBox ID="RadlbOfImageGroup" runat="server" DataKeyField="ID" DataSortField="Title"
DataSourceID="sdsImagesGroup" DataTextField="Title" DataValueField="ID" Skin="BlackByMe"
EnableEmbeddedSkins="False" Width="260px" Height="365px" EmptyMessage="no rec!"
AutoPostBack="True" OnSelectedIndexChanged="RadlbOfImageGroup_SelectedIndexChanged"
CausesValidation="False">
<ItemTemplate>
<table style="width: 100%;">
<tr style="width: 100%;">
<td style="width: 64%;">
<asp:Label ID="lblTitleOfIG" runat="server" CssClass="lbl_ListBox_IG_Title" Text='<%# Eval("Title") %>'></asp:Label>
</td>
<td style="width: 18%; text-align: center;">
<asp:LinkButton ID="lbEditIG" runat="server" CausesValidation="False" CommandName="Edit"
CssClass="lb_ListBox_IG" OnClick="lbEditIG_Click">Edit</asp:LinkButton>
</td>
<td style="width: 18%; text-align: center;">
<asp:LinkButton ID="lbDeleteIG" runat="server" CausesValidation="False" CommandName="Delete"
CssClass="lb_ListBox_IG" OnClick="lbDeleteIG_Click">Delete</asp:LinkButton>
</td>
</tr>
</table>
</ItemTemplate>
</telerik:RadListBox>
Mon problème est de savoir comment puis-je vérifier le nom de commande de linkButtons dans le code ci-dessus lorsque je clique dessus? (Nous n'avons pas accès à ces linkbuttons dans CodeBehind)
Je sais que nous n'avons pas besoin de nom de commandes pour ces linkbuttons / je veux juste savoir s'il est possible de les lire depuis CodeBehind?
La solution 2
Voici le code qui a été introduit par Telerik Team:
protected void lbDeleteIG_Click(object sender, EventArgs e)
{
LinkButton btn = sender as LinkButton;
if (btn.CommandName=="Delete")
{
Response.Write("Deleted");
}
}
Autres conseils
Je ne sais pas si c'est un moyen standard de résoudre ce problème, mais c'est ce que j'utilise:
For Each item In RadlbOfImageGroup.Items
Dim editbutton As HtmlGenericControl = item.findcontrol("lbEditIG")
//Do something with editbutton.CommandName
Dim deletebutton As HtmlGenericControl = item.findcontrol("lbDeleteIG")
//Do something with deletebutton.CommandName
Next
L'exemple ci-dessus est dans VB.NET mais devrait se traduire assez facilement en C # si c'est ce que vous utilisez.