C# combox控制元件下拉列表模糊查詢
阿新 • • 發佈:2018-12-11
//預設查詢全部,可以選擇取消 private void FrmAddShang_Load(object sender, EventArgs e) { SqlConnection conn = DB.lianjie(); conn.Open(); SqlCommand cmd = new SqlCommand("select * from bb_chucun", conn); SqlDataReader sdr = cmd.ExecuteReader(); while (sdr.Read()) { com.Items.Add(sdr["name"].ToString()); } sdr.Close(); conn.Close(); } //下拉列表模糊查詢功能實現用TextUpdate private void com_TextUpdate_1(object sender, EventArgs e) {//查詢前先清除 this.com.Items.Clear(); //滑鼠指標順序 this.com.SelectionStart = this.com.Text.Length; //保持滑鼠指標原來狀態,有時候滑鼠指標會被下拉框覆蓋,所以要進行一次設定。 Cursor = Cursors.Default; //自動出現下拉列表 this.com.DroppedDown = true; string s = com.Text.Trim(); //獲取輸入內容 //查詢資料庫表中所有已錄入人員 SqlConnection conn = DB.lianjie(); conn.Open(); string sq = "select * from bb_chucun where name like '%" + s + "%'"; SqlCommand cmd = new SqlCommand(sq, conn); SqlDataReader sdr = cmd.ExecuteReader(); List<string> sList = new List<string>(); //存放資料庫查詢結果 while (reader.Read()) { sList.Add(reader["kehu"].ToString()); } if (sList.Count != 0) { this.comboBox1.Items.AddRange(sList.ToArray()); this.comboBox1.SelectionStart = this.comboBox1.Text.Length; } else { this.comboBox1.Items.Add(""); this.comboBox1.SelectionStart = this.comboBox1.Text.Length; } sdr.Close(); conn.Close(); }