c# - 如何在 winforms 中使用 EF 进行双向数据绑定(bind)?

标签 c# winforms entity-framework entity-framework-5

我对编码很陌生。现在我要告诉你我现在的情况和我想去的地方。希望你能帮忙。

我正在使用 EF5.0 数据库优先方法,我希望能够使用 GridView 列出和更新数据库值。

目前我正在像这样绑定(bind)我的数据:

  pehlivan_kabametrajEntities ctx = new pehlivan_kabametrajEntities();
        var result = from k in ctx.Kolons
                     select k;
        dataGridView1.DataSource = result.ToList();

这段代码完美地列出了我的数据。但是,这是错误的或不足以满足我的需求。因为我希望能够直接在 gridview 上编辑我的数据。请告诉我哪里出了问题,我该怎么办。至少一些可以到达我想要的目的地的文件的链接会很棒。 谢谢。

最佳答案

如果绑定(bind)到查询结果,则您仅使用单向数据绑定(bind)。您需要有 IBindingList 才能获得双向数据绑定(bind)。试试这个:

 ctx.Kolons.Load();
 dataGridView1.DataSource = ctx.Kolons.Local.ToBindingList();

如果它不起作用,请尝试使用 BindingSource:

 ctx.Kolons.Load();
 gridBindingSource.DataSource = ctx.Kolons.Local.ToBindingList();
 dataGridView1.DataSource = gridSource; 

关于c# - 如何在 winforms 中使用 EF 进行双向数据绑定(bind)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12736958/

相关文章:

c# - 检查是否未设置所有枚举值

c# - 如何将图标添加到窗口窗体顶部栏(在最小化最大化按钮旁边)

c# - 在字典中使用对象作为键

c# - Entity Framework MVC 4 类问题

c# - 在所有地方更改 DateTime.now 的最佳方法

C# 需要有关表单导航的简单问题的建议

c# - 从蒙版文本框中解析文本

c# - EF 中的 ObjectMaterialize 未在第一级查询上触发

c# - Entity Framework - 将现有实体添加到种子方法中的一对一关系

.net - 从 Entity Framework 模型为 SQLite 数据库生成 SQL