我只想知道如何创建一个只允许用户输入数字的文本框,一个允许数字和句号的文本框,以及一个只允许用户输入字母的文本框?
我将此代码用于 Windows 窗体:
private void YearText_KeyPress(object sender, KeyPressEventArgs e) //Textbox only accepts numbers
{
char ch = e.KeyChar;
if (!Char.IsDigit(ch) && ch != 8 && ch != 13)
{
e.Handled = true;
}
}
private void NameText_KeyPress(object sender, KeyPressEventArgs e) //Textbox only accepts letters
{
if (!char.IsLetter(e.KeyChar) && !char.IsControl(e.KeyChar) && !char.IsWhiteSpace(e.KeyChar))
e.Handled = true;
}
private void ResellPriceText_KeyPress(object sender, KeyPressEventArgs e) //Textbox that allows only numbers and fullstops
{
if (!char.IsControl(e.KeyChar)
&& !char.IsDigit(e.KeyChar)
&& e.KeyChar != '.')
{
e.Handled = true;
}
// only allow one decimal point
if (e.KeyChar == '.'
&& (sender as TextBox).Text.IndexOf('.') > -1)
{
e.Handled = true;
}
}
但我很快发现这不能用 WPF 完成。我不关心诸如粘贴字母/数字之类的事情。