我用BindingSource邦定DataGridView控件和Combox控件,在非編輯狀態下,為了不讓用戶修改數據,控制了鍵盤輸入,但無法控件鼠標選擇Combox的選項,以前用設置Combox.Enable=false,但用戶反映字體灰了看不清。各位有沒有其它方法控制用戶選擇Combox下拉框中的選項。

解决方案 »

  1.   

    要不你先把内容存好,如果用户点击改动出发chang事件把值变回去,然后给消息框提示不能修改
      

  2.   

    comboBox有个DropDownStyle属性,当设置为dropdownList,不能编辑其内容
      

  3.   

    请问LZ,你为了不让用户自己乱选,那你为什么还给combox里面放那么多选项,你可以直接设置combox中只有一个值不就OK。
      

  4.   

    因為我用的是邦定方法,在非編輯下如果用戶亂選的話,當用戶移到下一行時,上次亂選的數據就在DataGridView存在了,這樣會誤導用戶以為修改了,實際上是沒有修改到數據庫的。我希望隻有在用戶點擊修改按鈕後,才可以選擇選項內容。
      

  5.   

    非编辑状态下,清楚ComboBox里的数据
      

  6.   

    我们的做法是简单也很暴力,设置一个标志,控制是否能够编辑,在每个控件的Click事件处理方法中都加上判断,如果当前是非编辑状态,就来个this.Focus(),把焦点移走,否则就不作额外处理。
      

  7.   

    我試了一下,這種方法可行,但沒有什麼方法控件ComBox的DropDown事件