For Each row As DataGridViewRow In DGV.Rows
DGV.Rows.RemoveAt(CInt(row.Index.ToString))
Next
上面的代码将删除每隔一行这个子程序为什么不工作? (vb.net DataGridView的怪胎)
For i As Integer = 0 To 7 Step 1
For Each row As DataGridViewRow In DGV.Rows
DGV.Rows.RemoveAt(CInt(row.Index.ToString))
Next
Next
此代码摆脱一切(DGV有,当时的子程序调用,250行)
DGV是显示的DataGridView对象。
我不明白为什么那第一个不会工作。
为了澄清,我用CInt(row.Index.ToString)
代替row.Index
因为row.Index
似乎并没有对自己的工作,但CInt(row.Index.ToString)
一样。
我自己也尝试了诸如:
For i As Integer = 0 To DGV.Rows.Count Step 1
DGV.Rows.RemoveAt(i)
Next
这也未能奏效。
我甚至在最后一个例子中尝试使用实际数字250代替DGV.Rows.Count
,但是结果相同,它总是跳过其他所有代码。我想通过循环遍历几次,我可以清除整个事情,所以我使用了试验和错误,直到我以7次迭代结束为幻数。
有人可以向我解释这种古怪吗?
这样做,谢谢! – Cyclone 2009-09-21 23:33:38