C# 如何在特定行和列中添加复选框?
我想在特定的行和列中添加复选框,但我总是偶然发现这个错误 “System.FormatException:单元格的格式化值具有错误的 类型。“ 这是我添加复选框的代码C# 如何在特定行和列中添加复选框?,c#,winforms,checkbox,datagridview,C#,Winforms,Checkbox,Datagridview,我想在特定的行和列中添加复选框,但我总是偶然发现这个错误 “System.FormatException:单元格的格式化值具有错误的 类型。“ 这是我添加复选框的代码 private void checkboxSource(string columnSource, int n) { DataGridViewCheckBoxCell checkboxColumn = new DataGridViewCheckBoxCell(); checkboxCo
private void checkboxSource(string columnSource, int n)
{
DataGridViewCheckBoxCell checkboxColumn = new DataGridViewCheckBoxCell();
checkboxColumn.FalseValue = "0";
checkboxColumn.TrueValue = "1";
dataGridView1.Rows[n].Cells[6] = checkboxColumn;
}
当我尝试将
checkboxColumn
绑定到datagridview时,我知道有问题。如果考虑了哪些行和单元格,请有人指导我如何将复选框正确绑定到datagridview。提前感谢。错误是因为单元格包含空值。您应该将单元格的值设置为false
。当单元格值为DBNull时,该属性设置显示值。value
或null
:
var cell = new DataGridViewCheckBoxCell()
{
TrueValue = "1",
FalseValue = "0",
};
cell.Style.NullValue = false;
this.dataGridView1.Rows[2].Cells[0] = cell;
通常,您应该创建类型为
DataGridViewCheckBoxColumn
的列,而不是更改单元格类型。但如果出于某种原因需要更改特定的单元格类型,则可以更改单元格类型。