将组合框与列表同步<;字符串>;[C#]

本文关键字:gt 字符串 组合 lt 列表 同步 | 更新日期: 2023-09-27 18:23:41

有什么方法可以将我的List<string>ComboBox同步吗?

我想要的是我的组合框,根据列表的变化自动更新它的内容。

我尝试过使用ComboBox.DataSource属性,但这不会更新ComboBox,它只填充一次,仅此而已,所以。。。

将组合框与列表同步<;字符串>;[C#]

使用BindingSource对象。

 List<string> list = new List<string>();
 BindingSource bsource=new BindingSource();
 //Set list dataSource
 bsource.DataSource = list;
 comboBox1.DataSource = bsource;
 //Now add an element via Binding object
 bsource.Add("One");
 bsource.Add("Two");

或者您可以尝试创建IList的Adapter包装器的ArrayList.Adapter方法。

ArrayList项;

items=ArrayList.Adapter(comboBox1.Items);
items.Add("one");

尝试用ObservableCollection<string>替换List<string>

请看一下示例:如何:创建并绑定到ObservableCollection。

有关绑定源的详细信息:绑定源概述。

更新:

对不起,我没有提到你正在使用Windows窗体,所以请看问题:WinForms组合框数据绑定问题。