C#如何实现一个输入框输入,匹配提示数据

在C#中可以使用AutoCompleteStringCollection类来实现输入框的自动完成功能。

首先需要创建一个包含所有候选项的字符串集合(List)或者从文件、数据库等地方获取到这些候选项。然后将该集合传递给TextBox控件的AutoCompleteCustomSource属性。

下面是一个示例代码:

复制代码
using System;
using System.Collections.Generic;
using System.Windows.Forms;
 
namespace AutocompleteExample
{
    public partial class Form1 : Form
    {
        private List<string> suggestions = new List<string>(); // 存放候选项的列表
        public Form1()
        {
            InitializeComponent();
            // 添加一些候选项到suggestions列表中
            suggestions.Add("Apple");
            suggestions.Add("Banana");
            suggestions.Add("Orange");
            suggestions.Add("Grapes");
            suggestions.Add("Mango");
            textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; // 设置为自动追加模式
            textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; // 设置为自定义源
            textBox1.AutoCompleteCustomSource.AddRange(suggestions.ToArray()); // 设置自定义源为suggestions列表
        }
    }
}

对于TextEdit控件想要实现相同的功能

复制代码
textEdit1.Properties.AdvancedModeOptions.AutoCompleteMode = DevExpress.XtraEditors.TextEditAutoCompleteMode.SuggestAppend;
textEdit1.Properties.AdvancedModeOptions.AutoCompleteSource = AutoCompleteSource.CustomSource;
textEdit1.Properties.UseAdvancedMode = DevExpress.Utils.DefaultBoolean.True;
textEdit1.Properties.AdvancedModeOptions.AutoCompleteCustomSource.AddRange(suggestions.ToArray());

比textbox控件多一步设置UseAdvancedMode

相关推荐
步步为营DotNet1 小时前
Async 状态机要搬进运行时了:.NET 10 Runtime Async 实测,快的地方快 1.5 倍,贵的地方贵 5 倍
性能优化·c#·.net·async·runtime
hixiong1231 小时前
C# 使用 ZXingCpp.Angle 进行条码、二维码识别
开发语言·c#·扫码
步步为营DotNet2 小时前
System.Text.Json 源生成:三个“看起来已经生效“的静默失效
c#·.net·native aot·源生成
用户7884773163416 小时前
用 C# 把每周 6 小时的 PDF 录入干到 20 分钟:一份可复制的桌面 OCR 方案
c#
csdn_aspnet18 小时前
C# .NetCore Swagger ISchemaFilter 处理枚举、特殊类型
c#·.netcore·swagger
滴滴答答哒18 小时前
C# 技巧:优雅实现对象的“局部更新”与“字段合并”
开发语言·c#
code_long1 天前
.net core 连接打印机 使用zpl指令打印机,并且位图本地渲染zpl指令
c#·.netcore·位图·打印机·模板编辑·模板预览
csdn_aspnet1 天前
C# .NetCore Swagger ISchemaFilter Long 转 String 防精度丢失
c#·.netcore·swagger
下页、再停留2 天前
【C#桌面客户端系列学习-11】将SQLite数据库打包到exe里
数据库·c#·visual studio
下页、再停留2 天前
【C#桌面客户端系列学习-12】封装SQLite数据库基础操作工具类(CURD)
数据库·c#·visual studio