我有一个包含几列的 DataGridView,你如何清除整个列中的数据?
问问题
12020 次
5 回答
2
只需循环行并清除单元格:
foreach (DataGridViewRow myRow in dataGridView1.Rows)
{
myRow.Cells[0].Value = null; // assuming you want to clear the first column
}
于 2013-02-22T23:55:00.403 回答
1
好吧,我知道已经有一段时间了,但这就是我所做的……我只是将列复制到一个临时变量中,从 datagridview 中删除该列,最后将临时列插入到 datagridview 中……这样,我不不必遍历所有行...
就像是:
var tmp = dgv.Columns[3];
dgv.Columns.Remove(dgv.Columns[3]);
dgv.Columns.Insert(3, tmp);
我还编写了一个扩展程序,以使代码更易于阅读:
public static class Extensions
{
public static void ClearColumn(this DataGridView dgv, int columnIndex)
{
if (dgv.Columns != null && dgv.Columns.Count - 1 >= columnIndex)
{
var tmpCol = dgv.Columns[columnIndex];
dgv.Columns.Remove(dgv.Columns[columnIndex]);
dgv.Columns.Insert(columnIndex, tmpCol);
}
}
}
像这样使用它:
Datagridview1.ClearColumn(3);
于 2013-06-20T18:16:50.797 回答
0
你可以使用这样的东西。假设您要清除第 0 列。
var myColumn = myDataGridView.Columns[0];
for (int i = 0; i < myColumn.Cells.Count; i++)
column.Cells[i].Value = null;
于 2016-10-27T21:02:04.267 回答
-1
你的意思
dataGridView1.Rows.Clear();
或者
如果您使用的是BindingSource
bindingSource1.Clear();
或者如果你想清除你的DataGridView Columns
dataGridView1.Columns.Clear();
于 2013-02-23T00:19:39.787 回答
-2
清除特定列
dataGridView1.Rows[<ROW_INDEX>].Cells[<CELL_INDEX>].Value = null
于 2013-02-23T00:14:13.480 回答