C#中BindingSource类中Remove和RemoveAt有什么区别?最好给个实例
谢谢!可以运行了!不过还有点小问题,能不能顺便帮帮忙?在程序中,不管是利用bindingSource1.RemoveAt()还是dataGridView1.Rows.Re...
谢谢!可以运行了!不过还有点小问题,能不能顺便帮帮忙?在程序中,不管是利用bindingSource1.RemoveAt()还是dataGridView1.Rows.Remove()删除某行时都能将数据操作的结果同步更新到数据库中,但从代码段看仅仅是对dataGridView1进行操作,并没有关于更新数据库的代码操作?是不是因为dataGridView1的数据源和bindingSource1绑定的缘故?能不能对两种方法如何将操作结果更新至数据库的原理讲解一下?
展开
1个回答
展开全部
功能都是移除对象,只是移除的方式不同
Remove传入参数的是对象,会将集合中与传入对象相等的对象全部移除,可能是一个或多个
RemoveAt传入的参数是INT,会将集合中对应的索引位置上的一个对象移除,索引超出界限将会报错
Remove传入参数的是对象,会将集合中与传入对象相等的对象全部移除,可能是一个或多个
RemoveAt传入的参数是INT,会将集合中对应的索引位置上的一个对象移除,索引超出界限将会报错
追问
你能不能给举个Remove的例子啊?我直接用下面代码总是报错啊?!按理说选中的行不就是对象吗?
bindingSource1.Remove(dataGridView1.SelectedRows[i])
追答
BindingSource的Remove传入的对象必须是Binding类型的,你这么写不出错才怪了
dataGridView1.Rows.Remove(dataGridView1.SelectedRows[i])
这两个才是移除dataGridView的行
要更新到数据库,这个就要看你的绑定方式了,最简单的办法,你移除的时候,同步用代码删除就行了,加个数据删除方法就行了,不一定必须要使用控件的绑定方法或属性才能做。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询