asp.net – 如何从Telerik RadGrid获取“KeyValue”?

前端之家收集整理的这篇文章主要介绍了asp.net – 如何从Telerik RadGrid获取“KeyValue”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
<telerik:RadGrid ID="radGrid" runat="server" AllowPaging="true" AllowCustomPaging="True"
    GridLines="None" PageSize="20" AllowMultiRowSelection="true" ClientSettings-Selecting-AllowRowSelect="true"
    AutoGenerateColumns="false" onneeddatasource="radGrid_NeedDataSource" OnItemCreated="radGrid_ItemCreated"
    OnItemDataBound="radGrid_ItemDataBound" OnItemCommand="radGrid_ItemCommand"
    DataKeyNames="ClientID">
    <mastertableview datakeynames="ID" gridlines="None" width="100%">
    <PagerTemplate> and so on ... </telerik:RadGrid>

情况: – 以上是我正在使用的Telerik RagGrid控件的标记.我试图访问GridColumn的KeyValue,通常的方式,

Int32 key = Convert.ToInt32((e.Item as GridDataItem).GetDataKeyValue("ID"));

这不行.有替补吗?

解决方法

请尝试以下代码片段.
protected void RadGrid1_ItemDataBound(object sender,GridItemEventArgs e)
{

    if (e.Item is GridDataItem)
    {
        // NORMAL MODE
        GridDataItem item = e.Item as GridDataItem;
        string strId = item.GetDataKeyValue("ID").ToString();
    }

    if (e.Item is GridEditableItem && e.Item.IsInEditMode)
    {

        if (e.Item is GridEditFormInsertItem)
        {
            // INSERT MODE
            GridEditableItem editedItem = e.Item as GridEditableItem;

        }
        else
        {
            // EDIT MODE
            GridEditableItem editedItem = e.Item as GridEditableItem;
            string strId = editedItem.GetDataKeyValue("ID").ToString();

        }

    }
}


protected void RadGrid1_ItemCommand(object sender,GridCommandEventArgs e)
{
    if (e.CommandName == "YourCommandName")
    {
        GridDataItem item = e.Item as GridDataItem;
        string strId = item.GetDataKeyValue("ID").ToString();
    }
}

猜你在找的asp.Net相关文章