博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c# WinForm 中英文智能提示
阅读量:6360 次
发布时间:2019-06-23

本文共 1555 字,大约阅读时间需要 5 分钟。

hot3.png

在项目中,查询功能总是少不了的,系统越大,查询就越显得臃肿繁琐。不过,看过百度谷歌以后,是不是决定我们应该像他们学习学习呢?

为了提高效率,减少冗杂的操作流程,第一种方法:提供一个简单的输入框,然后使用模糊查询,将有关关键字的内容全部查出来,还可以提供结果中2次查询。第二种方法:提供一个查询字典,当用户输入字符后,自动匹配,提供建议的关键字,方便用户进行查询。今天我就跟大家分享一下第二种方法吧:

难么?不做,难死!去做,发现,其实最关键的就四句话:

//定义一个自动完成的字符串集合            AutoCompleteStringCollection acsc = new AutoCompleteStringCollection();            /* 向acsc中加载匹配数据 */            //设置文本框的自动完成模式为Suggest            txtInput.AutoCompleteMode = AutoCompleteMode.Suggest;            //设置文本框的自动完成数据源为用户自定义数据源            txtInput.AutoCompleteSource = AutoCompleteSource.CustomSource;            //设置文本框的自定义数据源为acsc            txtInput.AutoCompleteCustomSource = acsc;
以上可以完美匹配英文,数字等,但是却不能直接匹配汉字。思来想去,只能是编码的问题了。转换了一下,终于发现完美解决了。现在把源码都贴出来,供大家参阅;

private void Form1_Load(object sender, EventArgs e)        {            //定义一个自动完成的字符串集合            AutoCompleteStringCollection acsc = new AutoCompleteStringCollection();            foreach (var variable in lstTips.Items)            {                //将中文转码                byte[] bytes = Encoding.Default.GetBytes(variable.ToString());                string s = Encoding.GetEncoding("gb2312").GetString(bytes);                acsc.Add(s);            }            //设置文本框的自动完成模式为Suggest            txtInput.AutoCompleteMode = AutoCompleteMode.Suggest;            //设置文本框的自动完成数据源为用户自定义数据源            txtInput.AutoCompleteSource = AutoCompleteSource.CustomSource;            //设置文本框的自定义数据源为acsc            txtInput.AutoCompleteCustomSource = acsc;        }

    

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://my.oschina.net/u/2260184/blog/518399

你可能感兴趣的文章
4939 欧拉函数[一中数论随堂练]
查看>>
MySQL笔记(一)
查看>>
spring boot 包jar运行
查看>>
18年秋季学习总结
查看>>
Effective前端1:能使用html/css解决的问题就不要使用JS
查看>>
网络攻防 实验一
查看>>
由莫名其妙的错误开始---浅谈jquery的dom节点创建
查看>>
磨刀-CodeWarrior11生成的Makefile解析
查看>>
String StringBuffer StringBuilder对比
查看>>
bootstrap随笔点击增加
查看>>
oracle 中proc和oci操作对缓存不同处理
查看>>
[LeetCode] Spiral Matrix 解题报告
查看>>
60906磁悬浮动力系统应用研究与模型搭建
查看>>
指纹获取 Fingerprint2
查看>>
面试题目3:智能指针
查看>>
flask ORM: Flask-SQLAlchemy【单表】增删改查
查看>>
vim 常用指令
查看>>
nodejs 获取自己的ip
查看>>
你好,C++(16)用表达式表达我们的设计意图——4.1 用操作符对数据进行运算...
查看>>
18.3 redis 的安装
查看>>