2015-02-11 28 views
0

我在WinForm中的DataGridView中的組合框列有一個奇怪的問題。DataGridView中的組合框WinForm未呈現選定的值

當我從ComboBox中選擇項目時,所選值將不會被ComboBox渲染。我需要單擊組合框,以便呈現或顯示組合框的選定值。如果不是,ComboBox將只顯示空白。

奇怪的是這隻發生在我的DataGridView的第一個ComboBox列中。

換句話說,在DataGridView中我的第二,第三或其他ComboBox列沒有發生這個問題。

任何想法?它可能是一個DataGridView錯誤?

感謝您的關注。

+0

與往常一樣,郵政編碼爲我們複製問題。 – LarsTech 2015-02-11 00:34:46

+0

你是否在代碼中創建組合框? – TaW 2015-02-11 09:26:15

+0

是的。我用代碼創建了組合框。 – Hatjhie 2015-02-25 02:04:30

回答

0

感謝您的關注。

我設法找到了我所問的問題的解決方案。

概述:

  1. 我通過添加一行到DataGridView手動填充在DataGridView行。
  2. 對於DataGridViewComboBoxCell對象,我使用DataSource填充項目,而不是手動將項目添加到 ComboBoxCell。

問題:

每當你在下拉框中選擇項目時,它無法呈現ComboBox中選擇的值。它只會顯示值,如果你點擊它。

解決方案: 原來代碼中的某處後,我設置了DataSourceDataGridViewComboBoxCell的,我叫其方法,DataGridViewComboBoxCell.Items.Count。這是怪異行爲的來源。

不知何故,如果你已經設置了ComboBoxCell數據源,並調用了Items.Count方法,它會顯示出奇怪的行爲。

我不應該使用Items.Count,因爲我使用的是DataSource。 Items.Count將始終爲零,因爲DataBinding在設置DataSource時不會立即發生。

希望這篇文章能幫助未來的其他人。謝謝。