删除行代码:
if (this.dataGridView1.CurrentRow != null)
{
if (dataGridView1.NewRowIndex != -1)
{
GrdData.Rows[dataGridView1.NewRowIndex-1].Delete();
GrdData.AcceptChanges();
this.dataGridView1.DataSource = GrdData;
}
}
用了 GrdData.AcceptChanges();为什么计算行的时候行不变??
C#中DataTable删除行后 GrdData.Rows.Count行数没变,求解:
答案:3 悬赏:60 手机版
解决时间 2021-01-03 09:19
- 提问者网友:皆是孤独
- 2021-01-03 01:45
最佳答案
- 五星知识达人网友:独行浪子会拥风
- 2021-01-03 02:00
这个可是算是bug吧 是不会改变的 如果需要操作的话可以用for循环来进行倒着操作进行删除 foreach也是不行的
全部回答
- 1楼网友:杯酒困英雄
- 2021-01-03 03:55
绑定datatable到datagridview的时候,最好是绑定datatable.defualtview。这样数据变更可以同时表现到datagridview上面的
- 2楼网友:思契十里
- 2021-01-03 03:27
你好!
delete不是真的删除了数据,而只是标记了不用的行。行数和每行的index都不会变的。要是希望真的删除数据,要用remove或者removeat
如果对你有帮助,望采纳。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯