2016-12-24 62 views
0

我填充一個組合框,如下所示:如何取消選擇組合框項目?

cboMonth.DataSource = Enumerable.Range(1, 12).ToList(); 

我也有以下事件:

private void cboMonth_SelectedValueChanged(object sender, EventArgs e) 
{ 
    //Do something... 
} 

的問題是,當我設置數據源,正在引發該事件。我只需要在用戶實際選擇一個項目時提出該事件。

設置數據源時是否可以避免引發事件?

+0

刪除處理或只使用一個標誌忽略的變化 – Plutonix

+0

使用SelectedIndexChanged事件 –

+0

的['SelectionChangeCommitted'](HTTPS ://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selectionchangecommitted(v = vs.110).aspx)僅在用戶更改組合框選擇時引發事件。 –

回答

1

您可以更改所選項目之前刪除的處理程序:同時用它搞亂

cboMonth.SelectedItemChanged -= cboMonth_SelectedValueChanged; 
cboMonth.SelectedItem = null; 
cboMonth.SelectedItemChanged += cboMonth_SelectedValueChanged;