我有一个带有Telerik radGrid的webform,我在其中选择一个记录然后在弹出窗口中显示它,但是当我按下按钮以显示表单中的记录时,该方法找不到Id的值和在进行调试时,我注意到radgrid丢失了所选的ID。我有其他形式,我做同样的程序,但这不起作用,我找不到原因。提前感谢您的意见。我在Visual Studio 2015和SQL Server 2012中使用C#。
ASPX
<telerik:RadGrid ID="grdTipoAudi" runat="server" Skin="Sunset"
AllowPaging="true" PagerStyle-AlwaysVisible="true"
AutoGenerateColumns="false" ShowGroupPanel="true" Font-Size="X-Small" Font-
Names="Arial" OnNeedDataSource="grdTipoAudi_NeedDataSource">
<MasterTableView NoDetailRecordsText="No existen registros para mostrar." PagerStyle-PageSizeLabelText="Lineas por páginas:" DataKeyNames="idTIPO_AUDITORIA" idTIPO_AUDITORIA">
<Columns>
<telerik:GridClientSelectColumn UniqueName="ClientSelectColumn"></telerik:GridClientSelectColumn>
<telerik:GridBoundColumn DataField="idTIPO_AUDITORIA" HeaderText="ID" ReadOnly="true"
SortExpression="idTIPO_AUDITORIA" UniqueName="idTIPO_AUDITORIA">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="tiaDESCRIPCION" HeaderText="Tipo De Auditoría" ReadOnly="true"
SortExpression="tiaDESCRIPCION" UniqueName="tiaDESCRIPCION">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
<ClientSettings>
<Selecting AllowRowSelect="true" />
</ClientSettings>
</telerik:RadGrid>
C#
protected void btnEditar_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in grdTipoAudi.MasterTableView.Items)
{
if (item.Selected)
{
string strKey = item.GetDataKeyValue("idTIPO_AUDITORIA").ToString();
}
}
IdLinea = "";
if (grdTipoAudi.SelectedItems.Count > 0)
{
IdLinea = (grdTipoAudi.SelectedItems[0] as GridDataItem).GetDataKeyValue("idTIPO_AUDITORIA").ToString();
SelectTipoAudi(Convert.ToInt32(IdLinea));
AbrirRadWindow();
}
}