問題很奇怪,我有一個組合框,它通過數據源屬性正確填充項目(它綁定到一個bindingSource項目,其中包含一個displaymember和一個valuemember),這是一個簡單組合框允許我通過在他們的名字而不是他們的ID之間進行選擇來選擇供應商。 問題是,當我更改SelectedValue,因爲我想要一個選項設置爲默認值時,我發現List屬性是空的(我在另一箇中繼承了組合框類),但是當顯示組合框時,它,所以也許這個問題與WHEN數據是從數據源真正加載(也許只有在顯示它後才加載?)有關。我什麼時候應該改變我的SelectedValue所以沒有任何「表示」事件在控制在顯示組合框之前更改組合框的選定值
感謝您的任何建議
更新1: 我在您的方式進行測試,但它不是這樣的話(關鍵是很長,但即使我投它它不工作),實際上有趣的是,我有一個setter,允許我設置SelectedValue,即使不拋出異常,在下一個MessageBox Items.Count給我0作爲值,這是非常奇怪的,因爲當組合框顯示在窗體上時,它具有我想要的所有值。這裏是我的二傳手的代碼:
public object InputValue
{
get
{
return SelectedValue;
}
set
{
SelectedValue = ((long)value);
MessageBox.Show(this.Items.Count.ToString());
}
}
請參閱我對金王的評論回答:http://stackoverflow.com/questions/18343855/argh-how-do-you-correctly-update-the-selectedvalue-of-a-combobox-on-initializat – RLH 2013-08-20 20:54:57