我在Windows窗体中有以下代码
Dictionary<String, String> dict = new Dictionary<string, string>();
ComboBox cbo = new ComboBox();
cbo.DisplayMember = "Key";
cbo.ValueMember = "Value"; // Not used
this.Controls.Add(cbo);
BindingSource bind = new BindingSource(dict, null);
cbo.DataSource = bind;
int count = cbo.Items.Count;
为什么在我的情况下,最后的数字是1?
如果我把数据放在字典中,一切都很好。
修改 解决方案在答案的评论中(直到我们更好)
答案 0 :(得分:1)
您可以尝试更改行:
BindingSource bind = new BindingSource(dict, null);
cbo.DataSource = bind;
为:
BindingSource bind = new BindingSource();
bind.DataSource = dict;
cbo.DataSource = bind;
我试过了,cbo.Items.Count
的结果是0。