Data-Bound Combobox有时会返回除选择显示成员之外的值

时间:2013-03-14 14:07:58

标签: c# data-binding combobox

这是与combox相关的所有代码。

string SelectedDealer = Dealers.SelectedValue.ToString();
this.Dealers.DataSource = this.dealersBindingSource;
this.Dealers.DisplayMember = "DealerName";
this.Dealers.ValueMember = "DealerName";

经销商表只有两列。

有时候(一次或两次/应用程序运行)会发生什么
Dealers.SelectedValue.ToString();

返回其他数据成员的值,letsay Dealer-Id;对,这很奇怪。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试更改行的顺序,谁知道,它可能会有所帮助:)如果以前没有设置ValueMember,可能在设置数据源后,Combobox会将默认值设置为ValueMember。

this.Dealers.DisplayMember = "DealerName";
this.Dealers.ValueMember = "DealerName";
this.Dealers.DataSource = this.dealersBindingSource;
string SelectedDealer = Dealers.SelectedValue.ToString();

同时检查组合框中是否确实选择了某些内容:组合框的SelectedIndex不应为-1(然后可能未指定SelectedValue,尽管它应该抛出NullPointerException)