WinForms DataGridViewComboBoxColumn的有效自动完成

时间:2009-11-19 19:11:56

标签: winforms controls

我已经构建了许多使用DataGridView网格和组合框列的WinForms应用程序。这些控件的用户交互似乎存在一个基本缺陷。通常,我的受众群体由业务用户组成,他们执行键盘驱动布局,并且他们希望在遇到下拉控件时自动完成选择。

我已经看到了这种控件类型的两个基本问题:

  1. 当控件将焦点作为一个tabstop时,它不会立即进入自动完成模式,并且用户必须通过敲击空格或几次击键来摆弄。
  2. 有时控件似乎有自动完成选择,但是当选项卡被点击时,选择会清除。这绝对是一个问题,你在网格中连续有2个控件。
  3. 我知道一种解决方案是使用不同的控件库。不久之后,我希望用WPF进行实时项目,但未来几年仍会有WinForm维护。我已经尝试过对自动完成和下拉样式设置的许多调整,但我从来没有想出一个真正适用于基于poweruser级键盘的数据输入的配置。

    有什么建议吗?

1 个答案:

答案 0 :(得分:1)

那么,对于第一个问题,您是否将DataGridView.EditMode设置为DataGridViewEditMode.EditOnEnter?

对于第二个,如果ComboBox列的开箱即用编辑控件没有按照您的意愿执行,您可以使用IDataGridViewEditingControl接口自行滚动。