从Datagridview中删除前50行 [英] Delete First 50 rows from Datagridview

查看:119
本文介绍了从Datagridview中删除前50行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的代码是



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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆