从Grid中删除多行

时间:2011-07-20 17:49:32

标签: c# devexpress xtragrid

如何从XtraGrid中删除多行?我使用的是DevEx版本10.2。有没有可用的教程?

2 个答案:

答案 0 :(得分:1)

您可以使用GetSelectedRows方法获取所选行(很好地命名为对吗?)。 然后,您可以使用循环遍历行并删除所选行。

另外,我发现这个“教程”可能就是你要找的东西:http://www.devexpress.com/Support/Center/KB/p/A234.aspx

它讨论了ColumnView.DeleteSelectedRows方法,尽管它只适用于较新版本的XtraGrid。

答案 1 :(得分:0)

你不能删除多行但我们可以在c#上欺骗。 实际上,当您使用此语句从GridData.Rows.RemoveAt(RowIndex);中删除gridview中的一行时 行计数减1,行索引也会改变,所以你必须小心。 在这里,首先你可以创建一个等于零的整数变量,当你删除一行时,它会增加一个。 第二步,将要删除的行的索引放在数组中,然后使用for循环删除行,但在发送参数时再次注意。

int deletedValue = 0 ;

for (int j = 0; j < counter; j++)

{
if (Array.binarySearch(myArray,j)){
  GridData.Rows.RemoveAt(j-deletedValue); deletedValue++;`
}
else {//The non deleted rows}}
}