不要指定 ValueMember所綁定的Field,在SelectedIndexChanged 或者 SelectedValueChanged事件中,SelectValue直接轉換為綁定類型,就能解決你所遇到的問題 回複 引用 檢視
#2樓[樓主] 2011-02-12 10:25 寒關月
@%admin
剛剛忙完手頭的事情試了一下你的方法,我不确定你最後說的在事件中直接轉換是什麼意思,但是你看下如下代碼:
在事件調用的時候,并不能解決問題,一樣依然會報錯誤。if條件還是>= 0.
是不是我了解錯誤?
如果還能看到這條回複的話還望不吝賜教 回複 引用 檢視
#3樓 2011-02-12 12:24 %admin
引用 寒關月:
@%admin
剛剛忙完手頭的事情試了一下你的方法,我不确定你最後說的在事件中直接轉換是什麼意思,但是你看下如下代碼:
在事件調用的時候,并不能解決問題,一樣依然會報錯誤。if條件還是>= 0.
是不是我了解錯誤?
如果還能看到這條回複的話還望不吝賜教
我是跟你說綁定ComboBox的時候,隻指定用于顯示的DisplayMember就可以了,不用指定 ValueMember,這種在你的SelectedValue的類型就是你綁定的資料類型,明白嗎? 你指定了ValueMember="CategoryId"的話,在DataSource綁定時刻所觸發的事件中 SelectedValue都是綁定類型,隻有你做了選擇操作後SelectedValue的類型才是你綁定的 CategoryId的類型。 回複 引用 檢視
#4樓 2011-02-12 12:34 %admin
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | |
回複 引用 檢視
#5樓 2011-02-12 16:17 無邪兮
去掉 cboCategory.ValueMember = "CategoryID";試試! 回複 引用 檢視
#6樓[樓主]20253012011/2/12 22:18:02 2011-02-12 22:18 寒關月
引用 %admin:
我是跟你說綁定ComboBox的時候,隻指定用于顯示的DisplayMember就可以了,不用指定 ValueMember,這種在你的SelectedValue的類型就是你綁定的資料類型,明白嗎? 你指定了ValueMember="CategoryId"的話,在DataSource綁定時刻所觸發的事件中 SelectedValue都是綁定類型,隻有你做了選擇操作後SelectedValue的類型才是你綁定的 CategoryId的類型。
晚上到家看到回複,仔細看了一下,我帖的那個圖裡我大意搞錯了,DisplayMember和ValueMember位置弄反了。
感謝提示。因為這個的關系,一下子想明白所有之前沒搞明白的部分了。非常感謝。