将整个 GridView 设置为只读
Set entire GridView to be read-only
我知道您可以将特定列指定为仅 readonly
但 C# 是否有办法将整个网格设置为只读?
例如,我知道这会将 1 列设置为只读,
dataGridView1.Columns["ColumnName"].ReadOnly = true;
我试过了,但抛出了一个编译时错误,
dataGridView1.ReadOnly = true;
错误:
Grid view does not contain a definition for Read Only
尝试迭代每一列以将整个 GridView 设置为只读
foreach(DataGridViewColumn column in dataGridView1.Columns)
{
column.ReadOnly = true;
}
您必须使用 foreach
/for
循环遍历数据网格并将每一列的 .ReadOnly
属性 设置为 true
.
因为按照惯例,它是包含 GridView 的“编辑”按钮的第一列,您可以简单地隐藏该列以实现只读。
foreach (GridView gv in this.Controls.All().OfType<GridView>())
{
gv.Columns[0].Visible = false;
}
我知道您可以将特定列指定为仅 readonly
但 C# 是否有办法将整个网格设置为只读?
例如,我知道这会将 1 列设置为只读,
dataGridView1.Columns["ColumnName"].ReadOnly = true;
我试过了,但抛出了一个编译时错误,
dataGridView1.ReadOnly = true;
错误:
Grid view does not contain a definition for Read Only
尝试迭代每一列以将整个 GridView 设置为只读
foreach(DataGridViewColumn column in dataGridView1.Columns)
{
column.ReadOnly = true;
}
您必须使用 foreach
/for
循环遍历数据网格并将每一列的 .ReadOnly
属性 设置为 true
.
因为按照惯例,它是包含 GridView 的“编辑”按钮的第一列,您可以简单地隐藏该列以实现只读。
foreach (GridView gv in this.Controls.All().OfType<GridView>())
{
gv.Columns[0].Visible = false;
}