• 联想控件


    C# WINFORM 某些控件实现联想输入功能

    需要用到的属性介绍:

    AutoCompleteMode

    指定在 ComboBox 和 TextBox 控件中使用的自动完成功能的模式。
    None ComboBox and TextBox controls."> 禁用 ComboBox 和 TextBox 控件的自动完成功能。
    Suggest 显示与编辑控件关联的辅助下拉列表。 此下拉列表填充了一个或多个建议完成字符串。
    Append 将最可能的候选字符串的其余部分追加到现有的字符,并突出显示追加的字符。
    SuggestAppend 同时应用 Suggest  Append 选项。

    AutoCompleteSource 

    指定 ComboBox 和 TextBox 自动完成功能的源。

    成员名称
    说明
    FileSystem 将文件系统指定为源。
    HistoryList 包括历史记录列表中的统一资源定位器 (URL)。
    RecentlyUsedList 包括最近使用的 URL 列表中的统一资源定位器 (URL)。
    AllUrl  HistoryList  RecentlyUsedList 的等效项指定为源。
    AllSystemSources 将 FileSystem 和 AllUrl 的等效项指定为源。 当 AutoCompleteMode 已设置为某个值,而不是默认值时,此即为默认值。
    FileSystemDirectories 指定仅自动完成目录名而不自动完成文件名。
    CustomSource 将内置 AutoCompleteStringCollection 中的字符串指定为源。
    None 指定当前没有使用任何 AutoCompleteSource 这是 AutoCompleteSource 的默认值。
    ListItems 指定 ComboBox 的项表示源。
     
     
    示例:
    1、ComboBox控件 联想输入
    属性更改:
    AutoCompleteMode 值为:SuggestAppend
    AutoCompleteSource 值为:ListItems
    后台数据绑定:
    this.combobox1.DataSource = list or dataTable or ...
    备注:DropDownStyle属性的值不能为DropDownList
     
    2.TextBox控件 联想输入
    属性更改:
    AutoCompleteMode 值为:SuggestAppend
    AutoCompleteSource 值为:CustomSource
    后台数据绑定:
    string[] tmp = new string[8] { "A", "AA", "AAA", "AB", "ABB", "ABCC", "AC","ACC" }; this.textBox1.AutoCompleteCustomSource.Clear(); this.textBox1.AutoCompleteCustomSource.AddRange(tmp);
    转载自:新浪博客(博主 Sky微笑的鱼er
    http://blog.sina.com.cn/s/blog_6e9c36f50100xiuc.html
     
     public static class TextBoxExten
        {
            public static void AutoComplete(this  TextBox textBox)
            {
                textBox.AutoCompleteMode = AutoCompleteMode.Suggest;
                textBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
            }
            public static void AutoComplete(this  ComboBox textBox)
            {
                ComboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
                ComboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
            }
        }
    

    如何引用:

    this.ComboBoxDeviceName.AutoComplete();
    

     重新修改:

     public static void AutoComplete(this  TextBox textBox)
            {
                textBox.AutoCompleteMode = AutoCompleteMode.Suggest;
                textBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
            }
            public static void AutoComplete(this  ComboBox textBox, string[] listName)
            {
                ComboBox.AutoCompleteCustomSource.Clear();
                ComboBox.AutoCompleteCustomSource.AddRange(listName);
                ComboBox.DataSource = listName;
                ComboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
                ComboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
                ComboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
            }

    引用代码:

     List<string> listName = new List<string>() { "A","AA","B","C"};
                this.ComboBoxName = this.ComboBoxName.AutoCompleteAndAddSource(listName);
     
  • 相关阅读:
    我所知道的JS调试
    css加载会造成阻塞吗?
    移动端图片上传旋转、压缩的解决方案
    JS组件系列——自己动手扩展BootstrapTable的 冻结列 功能:彻底解决高度问题
    什么是BFC
    CSS中margin边界叠加问题及解决方案
    JavaScript 中回调地狱的今生前世
    用css实现自定义虚线边框
    仿淘宝,京东红包雨
    css3实现可以计算的自适应布局——calc()
  • 原文地址:https://www.cnblogs.com/zhangyuanbo12358/p/3732303.html
Copyright © 2020-2023  润新知