资源简介
C#WinForm的ComboBox控件自定义实现自动模糊匹配查找数据的方法
与控件自带的AutoCompleteMode类似,完美实现模糊匹配,解决AutoCompleteMode只能从左向右匹配的问题
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace test
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//初始化绑定默认关键词(此数据源可以从数据库取)
List listOnit = new List();
//输入key之后,返回的关键词
List listNew = new List();
//当前输入框内的信息变量(只有在输入框里输入信息是此变量才会有值其他时候为默认空值)
string CbxNowStr = ““;
//输入框内的前一个历史信息变量
string CbxOldStr = ““;
private void Form1_Load(object sender EventArgs e)
{
//检测默认数组内是否有值
if (listOnit.Count > 0)
{
//清空默认数组
listOnit.Clear();
}
//向数组内添加数据
listOnit.Add(“张三“);
listOnit.Add(“张四“);
listOnit.Add(“张五“);
listOnit.Add(“李三“);
listOnit.Add(“李四“);
listOnit.Add(“李五“);
listOnit.Add(“王三“);
listOnit.Add(“王四“);
listOnit.Add(“王五“);
listOnit.Add(“三哥“);
listOnit.Add(“四哥“);
listOnit.Add(“五哥“);
//以上事例为测试数据
/*
* 1.注意用Item.Add(obj)或者Item.AddRange(obj)方式添加
* 2.如果用DataSource绑定,后面再进行绑定是不行的,即便是Add或者Clear也不行
*/
//调用数据绑定的方法
BindComboBox();
//以下两行为控件默认的方法只能从左向右匹配且无法和自己定义的查询方式同时使用
//this.comboBox7.AutoCompleteSource = AutoCompleteSource.ListItems;
//this.comboBox7.AutoCompleteMode = AutoCompleteMode.Suggest;
}
///
/// 动态绑定ComboBox数据的方法
///
private void BindComboBox()
{
//检测临时数组是否有值.初始化时临时数组为空
if (listNew.Count > 0)
{
//清空COMBOBOX里的下拉框数据
if (this.comboBox7.Items.Count > 0)
{
this.comboBox7.Items.Clear();
}
//重新绑定新数据
this.comboBox7.Items.AddRange(listNew.ToArray());//绑定数据
//指定下拉框显示项长度
this.comboBox7.MaxDropDownItems = listNew.Count;
//清空临时数组
this.listNew.Clear();
}
//默认数组内有值且当前输入框内容为空
else if (listOnit.Count > 0 && CbxNowStr == ““)
{
//清空COMBOBOX里的下拉框数据
if (this.comboBox7.Items.Count > 0)
{
this.comboBox7.Items.Clear();
}
//绑定默认数组数据给下拉框
this.comboBox7.Items.AddRange(listOnit.ToArray());//绑定数据
//指定下拉框显示项长度
this.comboBox7.MaxDropDownItems = listOnit.Count;
}
}
//此方法内会用到DroppedDown方法所以必须使用T
相关资源
- 自定义WPF TreeSelect、MultiTreeSelect 树形
- winform 多线程 异步 文件操作(查询、
- WPF之DataGrid基础学习代码(新)
- C# ListView中添加ComboBox等控件
- C#自定义控件--美化ComboBox源码(十分
- C# wpf combobox带treeview的自定义控件
- C#+ComboBox联想输入+代码类
- WPF ComboboxTreeview
- WPF自定义ComboBox用户名PasswordBox密码带
- WPF 下拉列表框ComboBox扩展控件
- winform ComboBox 下拉框 显示图片效果
- winform 自动完成(智能提示autocomplet
- 根据数据库字段生成对象属性工具含
- winform combobox 数据源支持 key(text)
- ComboBox 绑定List ArrayList 数据源- 自定义
- combobox 绑定多列
- wpf ComboBox 绑定数据 (INotifyPropertyCh
- C# - ComboBox绑定DataGridView控件
- CustomComboBoxDemo增强版
- combobox里面加载treeview (Treeviewcombob
- C# 自定义ComboBox实现下拉任意组件
- c# combobox实现复选框以及自定义样式
- 自定义控件下拉复选框:CheckBoxCombo
- 自定义ComboBox控件美化了combobox控件
- 树形ComBoBox控件源码
评论
共有 条评论