从Datagridview中删除前50行 [英] Delete First 50 rows from Datagridview
问题描述
我的代码是
Dim p As Integer = 0
for p = 0 to 49
datagridview1.Rows.RemoveAt(p)
下一页
如果我运行此代码它只删除奇数数字行,但我想删除行数据
请帮助。
我认为你在逻辑上有错误。
即
datagridview1.Rows .RemoveAt(p)删除索引的行。删除行后,刷新整个网格索引。
假设你有
索引0 =第1行
索引1 =第2行
索引2 =第3行
-----------------
--------- --------等等
在循环中(当p = 0时)
row1(索引0)已删除索引已刷新。
即网格变为
索引0 =第2行
索引1 =第3行
-----------------
--------------- -
第二次循环
(当p = 1时)
第3行被删除。使用当前索引(1)...所以你的循环只删除奇数行。
要解决你应该总是删除循环内索引0处的行。
你可以继续作为
Dim p 作为 整数 = 0
对于 p = 0 至 49
datagridview1.Rows.RemoveAt( 0 )
下一步跨度>
My Code is
Dim p As Integer = 0
For p = 0 To 49
datagridview1.Rows.RemoveAt(p)
Next
if i run this code it remove only odd number rows but i want to remove row wise data
Please help.
I think you have a error on logic.
that is
datagridview1.Rows.RemoveAt(p)delete the row of index p .after deleting the row whole index of grid is refreshed.
suppose you have
index 0 = row 1
index 1= row 2
index 2=row 3
-----------------
----------------- and so on
In your loop (when p=0 )
row1 (with index 0) is deleted index is refresed.
i.e. grid become as
index 0 = row 2
index 1= row 3
-----------------
-----------------
on 2nd loop(when p=1)
row 3 is deleted. with current index(1) ... so your loop deletes only odd rows.
To solve u should always remove row at index 0 inside loop.
you can proceed as
Dim p As Integer = 0 For p = 0 To 49 datagridview1.Rows.RemoveAt(0) Next
这篇关于从Datagridview中删除前50行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!