从Winforms(.net)将网格绑定到Linq数据源

时间:2009-04-14 17:22:13

标签: .net winforms linq linq-to-entities grid

回到过去(即上个月)我将我的winforms网格绑定到数据集并关闭并运行。默认情况下,可以更新网格内容。 (类似于Excel电子表格)

但是,如果我将网格绑定到Linq数据源(Linq到SQL或Linq到实体),我的winforms网格将被锁定为只读模式。如何启用更新模式?

3 个答案:

答案 0 :(得分:1)

您是否可能在投影中使用匿名类型?即。

select new {Foo = order.Foo, Bar = custmoer.Bar};

(或类似) - C#中的匿名类型是不可变的,所以是的:它看似只读。但是,常规类(LINQ生成的类或您自己的类)应该是可编辑的。唯一要记住的是在任何查询上调用.ToList()(而不是给它IEnumerable<T> / IQueryable<T>个对象。)

答案 1 :(得分:1)

查看各种类的GetNewBindingList方法以获得“更好”的绑定。

请记得在完成后致电SubmitChanges

答案 2 :(得分:0)

找到解决方案:使用lambda表达式过滤实体并直接绑定到实体。