C# WinForm TextBox猜想输入和历史记录输入(源码)

  什么是猜想输入


   

      当我们在使用查询应用时,输入某个关键字后文本框下面就会自动弹出跟此关键字相附的词组供我们选择,为我们节省了输入的时间,这就是猜想输入,例如:百度,谷歌,等等,如下图:

 

 

      如上图所示,使用WinForm的TextBox实现了这样的效果,主要借助于TextBox的AutoCompleteMode和AutoCompleteSource以及AutoCompleteCustomSource属性。

 

  详细参数


 

      AutoCompleteMode  

      获取或设置控制自动完成如何作用于TextBox的选项。 

      属性值

      Append  将最可能的候选字符串的其余部分追加到现有的字符,并突出显示追加的字符。

      Suggest  显示与编辑控件关联的辅助下拉列表。 此下拉列表填充了一个或多个建议完成字符串。

      SuggestAppend  追加 Suggest 和 Append 选项。

      None  禁用自动完成 这是默认值。


      AutoCompleteSource  获取或设置一个值,该值指定用于自动完成的完整字符串的源。 

      AutoCompleteCustomSource  获取或设置在 AutoCompleteSource 属性设置为 CustomSource 时使用的自定义 System.Collections.Specialized.StringCollection


      如下图:

      

 

  代码设计


      

TextBoxRemind 

 

  

      历史记录

      由于存储的都是文本数据,所以采用了文本文档进行存储,轻量级操作方便,系统会自动创建Remind.txt文件。

      加载窗体时首先初始化InitAutoCompleteCustomSource,添加AutoCompleteStringCollection,当我们点击确认后重新初始化数据源,加载之前录入的关键字。 

  

  最后


      

      大家经常遇到使用StreamReader和StreamWriter时中文不能正常显示,一个简单的方法就是将Encoding设置为Default即可。

 

  


      

      源码下载

posted @   Daniel.Zhao  阅读(11309)  评论(16编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示