如何避免雙擊DataGridView
內使用的DropDownButton
?現在,我可以通過點擊兩次或更多次來查看DataGridView
中的下拉項目。第一次選擇單元格,第二次單擊DropDownButton
箭頭時,它顯示列表。我怎樣才能在一個單一的點擊實現相同?單擊即可打開下拉菜單(在datagrid視圖中)
回答
您可以通過訂閱的EditingControlShowing
事件網格類型ComboBox
ComboBox ctl = e.Control as ComboBox;
ctl.Enter -= new EventHandler(ctl_Enter);
ctl.Enter += new EventHandler(ctl_Enter);
而且在輸入事件的控制實現這一點,在那裏,使用屬性
void ctl_Enter(object sender, EventArgs e)
{
(sender as ComboBox).DroppedDown = true;
}
DroppedDown表示爲該名稱表明是否顯示下拉區域,所以無論何時輸入控件,都會將其設置爲true並顯示項目,而無需進一步點擊。
我需要顯示點擊datagrid單元本身的dropitems。這沒有區別。 – NewBie 2011-06-14 11:21:13
你可以設置DataGridView EditMode ='DataGridViewEditMode.EditOnEnter' – V4Vendetta 2011-06-14 11:23:24
那樣做的工作。我只設置EditMode = EditOnEnter屬性,現在工作。謝謝。 – NewBie 2011-06-14 11:35:42
設置DataGridView
到EditOnEnter
的EditMode
屬性:link
DataGridView.EditMode
- 獲取或設置指示如何開始編輯單元格的值。
EditOnEnter
- 當細胞獲得焦點時編輯開始。
「將DataGridView的EditMode屬性設置爲EditOnEnter」爲我工作,但我發現了另一個問題:用戶無法通過選擇並按下DEL鍵來刪除行。所以,谷歌搜索給了我另一種方式來做到這一點。正好趕上事件CellEnter並檢查電池是撥款類型,像這樣的示例代碼執行撥款操作:
private void Form_OnLoad(object sender, EventArgs e){
dgvArmazem.CellEnter += new DataGridViewCellEventHandler(dgvArmazem_CellEnter);
}
void dgvArmazem_CellEnter(object sender, DataGridViewCellEventArgs e)
{
DataGridView dg = (DataGridView)sender;
if (dg.CurrentCell.EditType == typeof(DataGridViewComboBoxEditingControl))
{
SendKeys.Send("{F4}");
}
}
現在組合框下拉速度更快,用戶仍然通過選擇行並按下DEL刪除一行鍵。
就是這樣。
我體驗了這種有趣的行爲 - 第一次點擊展開了Dropbox,選擇了第一個項目,並立即關閉了Dropbox。我需要再次點擊才能真正做出我的選擇。 – valsidalv 2013-12-03 20:28:13
- 1. 點擊打開Wordpress下拉菜單
- 2. 下拉菜單alwways打開
- 3. 當我只需要打開一個下拉菜單時,JQuery下拉菜單打開多個下拉菜單
- 4. CSS下拉菜單中即
- 5. Ember視圖下拉菜單下拉菜單中有空標籤
- 6. 垂直菜單下拉菜單jQuery - 關閉打開新菜單時點擊
- 7. 下拉應該打開datagrid winforms單擊一下
- 8. 如何在左側下拉菜單中打開子菜單
- 9. Javascript離開下拉菜單打開
- 10. 「可點擊」下拉菜單中的CSS
- 11. 下拉菜單一次打開所有的下降菜單
- 12. Flex下拉菜單,子菜單未在正確位置打開
- 13. Android Spinner點擊離開下拉菜單
- 14. 在Textview上點擊打開下拉菜單
- 15. 試圖關閉下拉菜單,當下拉菜單打開並且用戶點擊文檔
- 16. 2下拉菜單打開網址
- 17. Bootstrap下拉菜單左側打開
- 18. bootstrap下拉菜單打開onclickof按鈕?
- 19. 打開的下拉菜單/向上CSS
- 20. 下拉菜單打開蝙蝠文件
- 21. 下拉菜單無法打開
- 22. .net下拉菜單 - 打開新窗口
- 23. 從下拉菜單打開彈出框
- 24. QML:向上打開的下拉菜單
- 25. 動態打開的下拉菜單
- 26. Angular-UI下拉菜單不打開
- 27. 將CSS下拉菜單打開:懸停
- 28. 如何打開ComboBox下拉菜單?
- 29. 有多個點擊即可打開的下拉菜單隻需要一次打開一個
- 30. jQuery的關閉下拉菜單打開時,另一個菜單點擊
您能詳細說明您想要實現的嗎? – V4Vendetta 2011-06-14 10:52:37
@ V4Vendetta,我已經更新了描述。請檢查。 – NewBie 2011-06-14 10:55:27
您可能需要檢查[此解決方案。](http://stackoverflow.com/questions/34543940/datagridviewcomboboxcolumn-doesnt-open-the-dropdown-on-first-click/39757746#39757746) – TaW 2016-09-28 21:18:26