C# DevExpress实现搜索智能提示功能
今天由于公司需求,需要对搜索框做一个类似百度搜索那样,有智能提示的下拉列表,现在使用DevExpress的TextEdit和GridControl控件,实现搜索时有智能提示的功能。使用版本13.1,如果有更好的实现方式,请记得分享出来,谢谢!
====================================================================================
- 一、首先是设计思路:拖出来一个TextEdit,命名为GridControl;后再其下方,再拖出来一个GridControl,命名为gridControl1;把搜索的资源放到一个泛型里面,比如List<string>;TextEdit的EditValueChanged的事件里面,实现下来功能,其思想就是把得到的数据放到GridControl里面,使其只显示一列内容,取消索引列、编辑功能以及表格的轮廓线等属性,使其看起来更像一个下拉列表;当下拉列表出现时有两种情况:
- 使用键盘时,按向下箭头,GridControl的第一列获取焦点;按向上箭头时,当达到第一列时,再次按下让TextEdit获取焦点,并把光标定位到最右边。
- 使用鼠标时,当点击某一个单元格是,隐藏GridControl,并把获得值传到TextEdit,让TextEdit获取焦点,并把光标定位到最右边。
- 二、代码实现方式:
THQuery类的展示查询下拉列表方法:
PS:键盘事件没有贴代码,需要的小伙伴请联系我哦!!!