上一篇文章是用ComboBox裏面的原生事件實現模糊查詢,操做比較靈活一些,可是收到評論說,利用AutoComplete屬性就能夠實現模糊查詢,可是據本人所瞭解,AutoComplete雖然可以方便的實現模糊查詢,可是有必定的缺陷,就是,模糊查詢只能從左往右。html
上一篇鏈接地址:http://www.cnblogs.com/xilipu31/p/3993049.html數據庫
下面是簡單的實現方式:this
前臺:一個簡單的form窗體+ComboBox控件spa
後臺:申明List<string> listOnit用於初始化ComboBox的備選數據,而後設置ComboBox屬性:AutoCompleteSource(自動完成數據源),AutoCompleteMode(提示類型)以及AutoCompleteCustomSource(綁定數據源)。3d
具體代碼以下:orm
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 TimerDemo { public partial class Form3 : Form { //初始化綁定默認關鍵詞(此數據源能夠從數據庫取) List<string> listOnit = new List<string>(); public Form3() { InitializeComponent(); } private void Form3_Load(object sender, EventArgs e) { BindComboBox(); } /// <summary> /// 綁定ComboBox /// </summary> private void BindComboBox() { listOnit.Add("張三"); listOnit.Add("張思"); listOnit.Add("張五"); listOnit.Add("王五"); listOnit.Add("劉宇"); listOnit.Add("馬六"); listOnit.Add("孫楠"); listOnit.Add("那英"); listOnit.Add("劉歡"); //自動完成數據源 this.comboBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; //提示類型 建議列表+自動補全 this.comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; //綁定數據源 this.comboBox1.AutoCompleteCustomSource.AddRange(listOnit.ToArray()); } } }
如下是實現效果截圖:htm
從左到右輸入關鍵詞模糊查詢(例如輸入:張)blog
能夠得出正確的提示和結果。事件
若是不是從左到右的模糊查詢呢?(例如輸入:三)ip
能夠看出,並不能將模糊數據查詢出來。
總結:
ComboBox控件的AutoComplete事件能夠用在模糊查詢程度不高,從左到右的關鍵詞搜索,若是想實現高級的模糊查詢,仍是本身定義的方式比較靈活一些。