C# 启用禁用的RadGrid时出现异常
我创建了一个控件,其中包含一个带有RadGrid(DataGrid)和RadButton(myButton)的面板。 单击按钮时,RadGrid将被禁用或启用:C# 启用禁用的RadGrid时出现异常,c#,asp.net,radgrid,C#,Asp.net,Radgrid,我创建了一个控件,其中包含一个带有RadGrid(DataGrid)和RadButton(myButton)的面板。 单击按钮时,RadGrid将被禁用或启用: myButton.Click += (sender, args) => { if (!this.DataGrid.Enabled) { this.DataGrid.Enabled = true; this.DataGrid.ClientSettings.EnablePostBackOnRow
myButton.Click += (sender, args) => {
if (!this.DataGrid.Enabled) {
this.DataGrid.Enabled = true;
this.DataGrid.ClientSettings.EnablePostBackOnRowClick = true;
this.DataGrid.ClientSettings.Resizing.AllowColumnResize = true;
this.DataGrid.ClientSettings.Selecting.AllowRowSelect = true;
this.DataGrid.ClientSettings.AllowKeyboardNavigation = true;
} else {
this.DataGrid.Enabled = false;
this.DataGrid.ClientSettings.EnablePostBackOnRowClick = false;
this.DataGrid.ClientSettings.Resizing.AllowColumnResize = false;
this.DataGrid.ClientSettings.Selecting.AllowRowSelect = false;
this.DataGrid.ClientSettings.AllowKeyboardNavigation = false;
}
this.DataGrid.Rebind();
}
这很好。但是,当我再次单击时,我将得到一个异常:
[GridException:请将ClientSettings.Selecting.AllowRowsSelect设置为“True”以开始使用GridClientSelectColumn。]
RadGrid包含一个GridClientSelectColumn
谁能帮我一下,我能做些什么来防止这个异常在第二次单击时调用myButton的EventHandler之前发生异常
当我删除
GridClientSelectColumn
时,它毫无例外地工作。当您有GridClientSelectColumn
时,就会发生这种情况。默认情况下,RadGrid在单击行时触发服务器端事件,因此它必须知道您希望在客户端选择行
客户端设置参数如下所示:
<ClientSettings>
<Selecting AllowRowSelect="True"></Selecting>
</ClientSettings>
它们适合于RadGrid声明根的XML。为了可读性,我把它们放在了列的前面,但它们也可以放在后面
注意
和
<telerik:RadGrid ID="mygrid"
runat="server" AutoGenerateColumns="false"
AllowSorting="true"
OnNeedDataSource="mygrid_NeedDataSource"
AllowFilteringByColumn="False">
<ClientSettings>
<Selecting AllowRowSelect="True"></Selecting>
</ClientSettings>
<MasterTableView DataKeyNames="myColumn" Name="Header">
<Columns>
<telerik:GridClientSelectColumn ItemStyle-Width="25px" />
<telerik:GridBoundColumn DataField="myColumn" HeaderText="My Column" />
</Columns>
</MasterTableView>
</telerik:RadGrid>