永发信息网

C#中DataTable删除行后 GrdData.Rows.Count行数没变,求解:

答案:3  悬赏:60  手机版
解决时间 2021-01-03 09:19
  • 提问者网友:皆是孤独
  • 2021-01-03 01:45
删除行代码:
if (this.dataGridView1.CurrentRow != null)
{
if (dataGridView1.NewRowIndex != -1)
{
GrdData.Rows[dataGridView1.NewRowIndex-1].Delete();
GrdData.AcceptChanges();
this.dataGridView1.DataSource = GrdData;

}
}
用了 GrdData.AcceptChanges();为什么计算行的时候行不变??
最佳答案
  • 五星知识达人网友:独行浪子会拥风
  • 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 如果对你有帮助,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯