本文中忽略大小写。
最简单的情况:
mydb db=new mydb(); //建立EF上下文
db.x.load(); //加载数据到本地
this.xBindingSource.DataSource = db.x.local.tobindinglist(); //datagridview.datasource=this.xBindingsource
这种情况下,可以修改表格中的数据,然后通过
this.datagridview.endedit();
db.savechanges()
保存数据修改
查datagrid是无法过滤筛选数据的,设置xBindingSource的filter是无效,这个只能用在list的筛选上,对bindinglist无效。
解决办法:
this.xBindingSource.DataSourcenew=new BindingList<x>(db.x.Local.Where(p => p.s == "xxx").ToList());
将筛选出的数据转为bindinglist给bindingsource赋值即可
这样可以实现筛选数据到datagridview的双向绑定,并可以在db.savechanges中保存数据。