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(); } }