winform中combobox下拉框的模糊匹配解决思路
winform中combobox下拉框的模糊匹配
RT,我只知道combobox中这样写可以根据第一个字符匹配,我现在想根据输入的字符自动模糊匹配含有这个字母的项
例如:combobox中有项:
NO.1
NO.2
NO.3
4
5
如果是根据将属性AutoCompleteMode改为SuggestAppend,AutoCompleteSource改为ListItems,DropDownStyle改为Simple,只能实现输入第一个字符匹配的显示。比如我输入4,可以显示4;我输入1,就没找到1
我想实现的是:我输入1,可以找到NO.1
求教~~ 谢谢
------解决方案--------------------
我感觉如果需要经常进行模糊比对,是不是开辟一块内存,然后将出现的字符的ASCLL值与存在该字符的数据连接起来,然后进行模糊比对时,可以根据用户输入的字符轻松找到所有包含该字符的数据
------解决方案--------------------
对于在大量数据中查找,我感觉,在录入数据时就得将数据有规则的存放,这样查找起来会很方便
------解决方案--------------------
界面一个TextBox1一个ComBoBox,根据TextBox的值匹配
RT,我只知道combobox中这样写可以根据第一个字符匹配,我现在想根据输入的字符自动模糊匹配含有这个字母的项
例如:combobox中有项:
NO.1
NO.2
NO.3
4
5
如果是根据将属性AutoCompleteMode改为SuggestAppend,AutoCompleteSource改为ListItems,DropDownStyle改为Simple,只能实现输入第一个字符匹配的显示。比如我输入4,可以显示4;我输入1,就没找到1
我想实现的是:我输入1,可以找到NO.1
求教~~ 谢谢
------解决方案--------------------
我感觉如果需要经常进行模糊比对,是不是开辟一块内存,然后将出现的字符的ASCLL值与存在该字符的数据连接起来,然后进行模糊比对时,可以根据用户输入的字符轻松找到所有包含该字符的数据
------解决方案--------------------
对于在大量数据中查找,我感觉,在录入数据时就得将数据有规则的存放,这样查找起来会很方便
------解决方案--------------------
界面一个TextBox1一个ComBoBox,根据TextBox的值匹配
- C# code
//先绑定数据到ComBoBox DataTable data = new DataTable();//定义成全局 data.Columns.Add("column1", typeof(int)); data.Columns.Add("column2", typeof(string)); DataRow dr1 = data.NewRow(); dr1["column1"] = 1; dr1["column2"] = "NO.1"; DataRow dr2 = data.NewRow(); dr2["column1"] = 2; dr2["column2"] = "NO.2"; DataRow dr3 = data.NewRow(); dr3["column1"] = 3; dr3["column2"] = "NO.3"; data.Rows.Add(dr1); data.Rows.Add(dr2); data.Rows.Add(dr3); this.comboBox1.DataSource = data; this.comboBox1.DisplayMember = "column2";
------解决方案--------------------
combobox总是左匹配的,没法设置,你必须自己从listbox去扩展
------解决方案--------------------
不能靠autocompelete来做
自己写吧
textchanged事件 重新加载 数据源 然后选中