我在窗體中有一個ComboBox
元素。它加載一個默認集合。 用戶可以手動輸入任何值。我怎樣才能防止用戶輸入字母字符?如何在Combobox C#中禁用輸入字母符號?
我想只允許數字輸入,或者完全禁用此選項。
我在窗體中有一個ComboBox
元素。它加載一個默認集合。 用戶可以手動輸入任何值。我怎樣才能防止用戶輸入字母字符?如何在Combobox C#中禁用輸入字母符號?
我想只允許數字輸入,或者完全禁用此選項。
您可以使用正則表達式作爲一個例子 在Combobox_TextChanged事件如果字符內的比賽中取出
private void comboBox1_TextChanged(object sender, EventArgs e)
{
string rex=comboBox1.Text;
Regex regex = new Regex(@"^\d$");
if (regex.IsMatch(compare))
{
rex= Regex.Replace(rex, @"(?<=\d),(?=\d)|[.]+(?=,)[A-Z]", "");
}
comboBox1.Text=rex;
}
這可以幫助你。 Regex for numbers only
只允許數字
其實,你並不需要的正則表達式這個簡單的要求。
private void comboBox1_TextChanged(object sender, EventArgs e)
{
if (comboBox1.Text.Any(x => !char.IsDigit(x)))
{
comboBox1.Text = string.Concat(comboBox1.Text.Where(char.IsDigit));
comboBox1.Select(comboBox1.Text.Length, 0);
}
}
您可能還需要添加一個System.Media.SystemSounds.Beep.Play();
參見[如何提出一個很好的問題(https://stackoverflow.com/help/how-to-ask) – KiwiPiet
你嘗試過什麼? SO善於幫助您突破技術挑戰。但是,如果給你提供關於事物的教程,它的設置並不是很好,因爲它更像是Q&A結構。 – code4life