2015-09-04 47 views
1

是否有任何可能的方法来清除DataGridView在c#中只有一行? 原因嵌入该代码在c#中只清除DataGridView中的一行#

dataGridView1.Rows.Clear(); 

时,它会清除我的数据网格的所有项目。我只想要一个项目行被一个按钮触发时清除。

任何帮助,将不胜感激

回答

2

你可以试试这个删除dgv上的当前行。

YourDGVName.Rows.RemoveAt(YourDGVName.CurrentRow.Index); 

您也可以每次选取所选行或特定行号。

+0

谢谢!这工作! – Jon

3

你可以删除行这样的,如果你已经拥有了该行:

dataGridView1.Rows.Remove(rowToRemove); 

或者,你可以删除选定的行这样的:

var rowToRemove = dataGridView1.Rows[dataGridView1.SelectedCells.Item(0).RowIndex]; 
dataGridView1.Rows.Remove(rowToRemove); 

或者像这样:

dataGridView1.Rows.RemoveAt(dataGridView1.CurrentRow.Index); 

,或者,如果要清除所有选定行:

foreach (var row in dataGridView1.SelectedRows) 
{ 
    dataGridView1.Rows.Remove(row); 
} 

最好不过,你要绑定到数据源(通常是通过视图模型),然后取出从源头上选择的原点。

+0

嗨d.moncada ..如何清除选定的行 – Jon

+0

@JonBonJoviMateo第二个实现将通过索引清除它。另请参见更新 –

+0

行中遇到的错误 “不能使用非可成员成员'DataGridView.Rows'”“方法不能使用” ---------------------- --------------- 项目 中遇到的错误 DataGridViewSelectedCellCollection不包含'item'的定义,并且没有接受类型为'DataGridViewSelectedCellCollection'的第一个参数的扩展方法'item'可能是发现(你是否错过了使用指令或程序集引用?) – Jon