Combobox响应键盘按键的大问题
当Combobox的风格设置为DropDownList的时候,如果Combobox获取到焦点,此时点击键盘,它会自动地选择和键入的字符匹配的选项。
比如,Combobox的list中有如下选项:
100,
110,
120,
130,
...
200,
210,
220,
...
300,
310,
...
在MFC 7的combobox控件中,如果按下"2",Combobox会选到"200"这个选项,如果间隔很短地再按"1",这时会选到"210"这个选项。
在.net的combobox控件中,如果按下"2",Combobox会选到"200"这个选项,如果间隔很短地再按"1",这时会选到"100"这个选项,而不是"210"这个选项。
这是它们的区别,也就是说.net的Combobox只能响应选项中的第一个字符,它并不能像MFC控件那样支持用户连续的输入,比如我想定位到选项"130"上,就间隔很短地输入"1","3","0",这样Combobox就选中这个"130"和输入完全匹配的选项上了。
现在的问题是,我用C#开发的程序中,如何使Combobox和MFC的Combobox保持一致。
我想到的方法有2:
1,继承Combobox类,自己实现键盘响应,缺点逻辑复杂。
2,能不能在.net中用MFC的Combobox控件呢?不晓得技术上能否走通,如有朋友知道这个问题,请一定告知!!!
其它的方法没有想到,希望大家都帮我想一想办法,谢谢大家!!!