0

radlistboxにitemtemplateを追加し、それに1つのラベルと2つのリンクボタンを追加しました...
私のradlistboxは次のようになります。

<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>

私の問題は、リンクボタンをクリックしたときに、上記のコードでLinkBut​​tonのCommandNameを確認するにはどうすればよいですか?(CodeBehindではこれらのLinkBut​​tonにアクセスできません)

これらのリンクボタンにCommandNameは必要ないことはわかっています/コードビハインドからそれらを読み取ることができるかどうかを知りたいだけです。

4

2 に答える 2

1

これがこの問題に対処する標準的な方法であるかどうかはわかりませんが、私が使用しているのは次のとおりです。

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 

上記の例はVB.Netにありますが、それを使用している場合は、C#にかなり簡単に変換できるはずです。

于 2011-05-16T08:35:19.653 に答える
1

これがtelerikチームによって導入されたコードです:

protected void lbDeleteIG_Click(object sender, EventArgs e)
   {
       LinkButton btn = sender as LinkButton;
       if (btn.CommandName=="Delete")
       {
           Response.Write("Deleted");
       }
   }
于 2011-05-16T09:38:13.553 に答える