C# Telerik RadGrid在编辑模式下将BoundColumn设置为只读
我有一个Telerik RadGrid,它有三个绑定列和一个按钮列。我想让用户只编辑一个绑定列中的值。用户可以添加新记录,因此我无法将两个绑定列设置为只读。我是否可以在ASPX中这样做,还是必须在代码隐藏中这样做?我有一些代码正在工作,但它不是最好的 这是我的密码:C# Telerik RadGrid在编辑模式下将BoundColumn设置为只读,c#,vb.net,telerik,radgrid,C#,Vb.net,Telerik,Radgrid,我有一个Telerik RadGrid,它有三个绑定列和一个按钮列。我想让用户只编辑一个绑定列中的值。用户可以添加新记录,因此我无法将两个绑定列设置为只读。我是否可以在ASPX中这样做,还是必须在代码隐藏中这样做?我有一些代码正在工作,但它不是最好的 这是我的密码: 案例“编辑” Dim aoeAnswerCode As GridBundColumn=CType(e.Item.OwnerTableView.GetColumn(“aoeAnswerCode”),GridBundColumn) ao
案例“编辑”
Dim aoeAnswerCode As GridBundColumn=CType(e.Item.OwnerTableView.GetColumn(“aoeAnswerCode”),GridBundColumn)
aoeAnswerCode.ReadOnly=True
案例“更新”、“性能测试”
对于e.Item.OwnerTableView.RenderColumns中作为GridColumn的每一列
如果列的类型为IGridEditableColumn或column.UniqueName=“aoeAnswerCode”,则
.aspx页面代码
<telerik:GridBoundColumn DataField="ID" UniqueName="ID" HeaderText="ID">
</telerik:GridBoundColumn>
只需将
ReadOnly
属性设置为true
。请参见下面的示例:
<telerik:GridBoundColumn DataField="Datetime" HeaderText="Date"
DataFormatString="{0:MM/dd/yyyy}" ReadOnly="True">
</telerik:GridBoundColumn>
code提示:几乎总是使用OrElse
而不是或
。在我的例子中,这也隐藏了radgrid
的Edit表单中的列
,它不允许我将其用作SqlDataSource
中的参数。
<telerik:GridBoundColumn DataField="Datetime" HeaderText="Date"
DataFormatString="{0:MM/dd/yyyy}" ReadOnly="True">
</telerik:GridBoundColumn>
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item.IsInEditMode && e.Item is GridEditFormItem)
{
// edit
GridEditFormItem item = e.Item as GridEditFormItem;
(item["column"].Controls[0] as TextBox).Enabled = false;
}
}