我可以获取gridview的选定索引但我想获取网格内的实际数据。我想在网格中选择一行,并能够访问“Client Id”列的实际数据值。网格工作正常,我可以访问SelectedIndexChanged事件。然后,我一直在努力寻找获得网格中显示的信息的方法。任何帮助将不胜感激。
同样,我需要访问代码隐藏的网格中显示的所有数据。
答案 0 :(得分:15)
这是数据键的用途。只需将您要访问的列指定为数据键,如下例所示。
<telerik:RadGrid ID="RadGrid1" runat="server" ...>
<MasterTableView DataKeyNames="Column1, Column2, Column3" ...>
...
</MasterTableView>
</telerik>
在标记中分配了数据密钥后,您可以逐行代码检查或使用SelectedValues
属性访问它们。
if (RadGrid1.SelectedItems.Count > 0)
{
//access a string value
string column1 = RadGrid1.SelectedValues["Column1"].ToString();
//access an integer value
int column2 = (int)RadGrid1.SelectedValues["Column2"];
}
答案 1 :(得分:1)
你可以这样做:
foreach (GridDataItem item in RadGrid1.MasterTableView.Items)
{
if (item.selected == true)
string mydata = item["ColumnName"].Text;
}
我建议您阅读本网站上的文档http://www.telerik.com/help/aspnet/grid/grdaccessingcellsandrows.html;它确实会对Telerik组件提供很多帮助。
答案 2 :(得分:0)
建议使用DataKeys作为James Johnson。您无法访问DataItem
事件中GridDataItem
的{{1}}媒体资源。它将为null。根据{{3}}“只有当网格绑定到数据时,DataItem对象才可用。”
当SelectedIndexChanged
可用时,与DateItem
事件一样,您可以对原始数据类型ItemCreated
进行投射:
MyType