我是使用telerik rad Grid的新手,我有这样的要求
像这样,上面的一个是现有的“Rad Grid”有两列,我想知道在Column2中选中了哪个复选框。 allowMultipleRowSelection =“true”..,如何查找特定复选框是否已选中。 的如: - .Net 行选中框已选中
如何找到 .net 行,
中的特定复选框插入和更新,但它在其他网格内部而不是独立网格。 父网格插入或更新我需要找出那个特定的。
如果有人知道,请回复。
<telerik:RadGrid ID="RgList1" runat="server" AutoGenerateColumns="false"
ShowHeader="false" Width="148px" >
<MasterTableView AutoGenerateColumns="false" >
<Columns>
<telerik:GridTemplateColumn >
<ItemTemplate>
<%# Eval("BankTypeName")%>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn UniqueName="chkBankList1">
<ItemTemplate>
<asp:CheckBox ID="chkBankTypeName" runat="server" />
</ItemTemplate>
</Columns>
</MasterTableView>
<ClientSettings AllowColumnsReorder="true" EnableRowHoverStyle="true" >
<Selecting AllowRowSelect="true"/>
</ClientSettings>
</telerik:RadGrid>
答案 0 :(得分:0)
您可以覆盖RgList1的ItemDataBound事件。此方法将触发网格中的每个项目。在那里,您可以使用if语句或switch语句来检查e.Item.ItemType。这是一个枚举器 - 你会看到很多选项,如Item,AlternatingItem,EditItem,FooterItem等。
然后您可以使用FindControl查找您的复选框。
尝试将e.Item转换为GridDataItem
if (e.Item is GridDataItem)
{
var item = (GridDataItem)e.Item;
CheckBox chkBankTypeName = (CheckBox)item["chkBankList1"].FindControl("chkBankTypeName");
}
答案 1 :(得分:0)
请尝试使用以下代码段。
foreach (GridDataItem item in RgList1.MasterTableView.Items)
{
CheckBox chkBankTypeName = (CheckBox)item.FindControl("chkBankTypeName");
if (chkBankTypeName != null && chkBankTypeName.Checked)
{
// Do your logic here
}
}
注意:与RadMrid中的allowMultipleRowSelection =“true”和asp:CheckBox没有任何关系。
如果有任何疑虑,请告诉我。