combobox 如果用點選的話是沒問題的,但如果需要用輸入text就去抓相對應的value,我應該怎麼寫呢?假設 value 有: 1-水壺 2-鉛筆 3-電腦,我在輸入 1 的時候 combobox 會出現 "1-水壺" 並取得相關的 value,而不用打開下來選單來選擇該選項。
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
comboBox1.Items.Add("1-水壺");
comboBox1.Items.Add("2-鉛筆");
comboBox1.Items.Add("3-電腦");
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
string target = textBox1.Text;
if (string.IsNullOrEmpty(target)) return;
comboBox1.Text = string.Empty;
string comboText = string.Empty;
foreach (string item in comboBox1.Items)
{
comboText = item.ToString();
if (comboText.Substring(0, target.Length) != target) continue;
comboBox1.Text = comboText;
break;
}
}
}
}
- 參考資料
- 論壇問題出處