Tag: datasource

C#更新绑定到通用列表的combobox

我的表单上有一个combobox,它绑定到一个通用的字符串列表,如下所示: private List mAllianceList = new List(); private void FillAllianceList() { // Add alliance name to member alliance list foreach (Village alliance in alliances) { mAllianceList.Add(alliance.AllianceName); } // Bind alliance combobox to alliance list this.cboAlliances.DataSource = mAllianceList; } 然后,用户可以在combobox中添加或移除项目。 我在别处读过,只需在通用列表中添加或删除项目,combobox的内容就会自动更新; 如果我对它使用Sort(),应该会发生同样的事情。 但由于某种原因,我无法做到这一点。 我可以看到combobox的DataSource属性在我添加/删除/排序项时正确更新,但combobox中显示的内容不是DataSource属性中的内容。 我肯定错过了什么或做错了什么。 提前致谢! 编辑: 我选择的答案解决了添加和删除的问题,但是BindingList对象无法排序,这对我来说是必要的。 我找到了一个解决方案,通过inheritanceBindingList和添加排序function来构建自定义类,但我想知道在我的情况下是否有更简单的解决方案。 关于如何轻松解决这个问题的任何建议?

如何将EF Code First DbContext绑定到Asp.Net DataSource?

我创建了以下Context以与Entity Framework Code First一起使用 : public class Context : DbContext { public DbSet Animals { get; set; } } 现在我想在Asp.Net应用程序中使用此Context来使用GridView执行CRUD操作。 我需要创建一个DataSource来进行数据绑定。 我该怎么办? ASP部分看起来像这样:

使用列表作为DataGridView的数据源

我已经将配置文件中的设置名称及其各自的值提取到有序字典中。 字典包含ICollection类的键和值。 我想绑定该数据并将其显示在DataGridView中。 我已经尝试将字符串复制到数组并显示这些数组,但是当我运行程序时,列是空白的,它似乎根本没有绑定。 我还试图将DataGridView源直接设置为有序字典集合(键或值),但这也没有产生我想要的任何东西; 列仍然是空白的。 但是,第三列的列名称为“length”,并显示ICollection中条目的长度。 但不用说我不想要长度,我想要条目本身。 这是我用于此问题的代码:在加载表单时,我加载配置文件,名为m_Settings的私有成员具有所有键值对。 然后我创建一个列表并分别添加键和值。 将绑定源设置为’data’后,我运行程序,我添加的两个列都是空白的。 private void Form4_Load(object sender, EventArgs e) { loadconfigfile(Properties.Settings.Default.Config); List data = new List(); data.Add(m_Settings.Keys); data.Add(m_Settings.Values); bindingSource1.DataSource = data; dataGridView1.DataSource = bindingSource1; dataGridView1.Refresh(); } 有关如何获取有序字典并在标有“设置”和“值”的两列中显示条目的任何想法? 我相信列表是DataGridViews兼容的DataSources,但现在我开始猜测自己了。 任何帮助或方向非常感谢! 如果需要,我很乐意提供更多信息。 谢谢! 编辑 : 以下是已实现的myStruct类的修订代码: List list = new List(); for(int index = 0; index < m_Settings.Count; index++) […]