最近一直在用winform,配合agileEAS的界面做起来soso的快,但有些问题是框架无法帮助我实现的,一些复杂业务依然需要绞尽脑汁、花谢心思,中间难免有涉及到用DataGridView来做几个关联性的数据承载(把你的添加给我,把我的提交更改之类的),这其中对DataGridView的增、删行操作时必不可少的。
对于删除行,一开始用的是比较无脑的二次绑定方法,就是修改了数据源之后在对DataGridView来个赋值操作,类似:
this.vList.Remove(dataGridView2.CurrentRow.DataBoundItem as JL_CARWEIGHTHISTORY);
this.dataGridView1.DataSource = this.vList.ToList();
这样每次删除后DataGridView都要reload一次,数据量大的时候不太明了。。。想直接用DataGridView自己带的Remove来解决,但总是报错,查了半天,貌似必须用bindingDatasource的方式来给DataGirdView赋值才可以。。。
这样的赋值变成了2连。。。
this.dataBindingSource = this.vlist;
this.dataGridView1.DataSource = dataBindingSource……
然后就可以用dataGridView1.Remove()来操作了。。。至于是不是有更简单的方法,那个路过的大神帮忙想想?
至于添加行,在不使用数据源的情况下,这种最省心。。。
dataGridView1.Rows.Add(item.FBillNo,item.FWeight,item.FResult); 有几列。。。加几个para。。。
肤浅的我,希望学习