将空字典绑定到列表框

时间:2012-06-04 17:55:48

标签: c# winforms listbox

当我尝试将字典绑定到列表框时,我得到一个ArgumentException。无法绑定到新值成员。

我使用以下代码。 任何人都可以告诉我有什么问题。因为当我在字典中输入i行时它工作得很好......

this.contactpersonenListBox = new Dictionary<int, string>();

lsContactpersonen.DataSource = new BindingSource(this.contactpersonenListBox, null);
lsContactpersonen.DisplayMember = "Value";
lsContactpersonen.ValueMember = "Key";

1 个答案:

答案 0 :(得分:3)

绑定空字典没有多大意义,因为字典对象不报告任何更改,因此在设置数据源后向字典添加项目将不会显示在ListBox中。 / p>

但要摆脱错误,请尝试将其设置为:

BindingSource b = new BindingSource();
b.DataSource = this.contactpersonenListBox;
lsContactpersonen.DisplayMember = "Value";
lsContactpersonen.ValueMember = "Key";
lsContactpersonen.DataSource = b;