gpt4 book ai didi

c# - ComboBox 数据源和 Entity Framework

转载 作者:太空狗 更新时间:2023-10-30 00:00:04 27 4
gpt4 key购买 nike

我将数据模型实体添加到名为 publishingCompanyEntities 的项目中,并在我的 winform 中添加了 ComboBox。但是当我想将我的作者列表绑定(bind)到我的组合框中时,因为数据源已填充数据,但是 cmoAuthors.Items.Count 返回 0 但 cmoAuthors.DataSource.Count 返回 2 项

        publishContext = new publishingCompanyEntities();
cmoAuthors.DataSource = publishContext.Authors;
cmoAuthors.DisplayMember = "FirstName";

最佳答案

您需要将 .ToList() 添加到 Authors EntitySet。

publishContext = new publishingCompanyEntities();
cmoAuthors.DataSource = publishContext.Authors.ToList();
cmoAuthors.DisplayMember = "FirstName";
cmoAuthors.Invalidate();

原因是 EntitySet 不是实际的集合。这是一个查询 (IQueryable),ComboBox 似乎不够智能,无法检测到它。

调用 ToList()publishContext.Authors 物化为对象。

由于某种原因,ComboBox 没有更新它的 Items 集合,然后检测到一个新的 DataSource。 Invalidate() 强制控件重绘自身,并在此过程中更新其 Items 集合。

关于c# - ComboBox 数据源和 Entity Framework ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15898632/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com