数据源为只读- c#
本文关键字:只读 数据源 | 更新日期: 2023-09-27 18:16:20
我有一个DataGridView与属性DataSource = datatable()
和readonly = false
。readonly
必须为假,因为还有其他列可以编辑。我如何使所有列在数据源只读(不可编辑)?
代码如下:
type = new DataGridViewComboBoxColumn();
table= new DataGridView
{
DataSource = datatable(), // this returns a DataTable object
AllowUserToAddRows = false,
AllowUserToDeleteRows = false,
RowHeadersVisible = false,
MultiSelect = false,
Name = "AgentTable",
AutoSize = true,
ReadOnly = false,
};
table.Columns.Add(CreateStartButton());
type.Items.Add(" some table");
type.ReadOnly = false;
table.Columns.Add(type);
编辑:datagridview将包含4列。
- 第一列,每个单元格是一个按钮(只读无关)
- 第二列,每个单元格是一个下拉框(只读为false)
- 第三和第四列被创建为DataTable对象,因此(readonly必须为true)
那么我的问题是如何使第三和第四列只读?
在创建所有列之后,应该很容易迭代它们。我会用这样的代码,但我称它为伪代码因为我不知道DataColumn是否是正确的数据类型:
foreach(DataColumn col in table.Columns) {
col.ReadOnly = true;
}