我正在制作一个文本框来输入一些Product
价格,我不希望用户输入"."
不止一次。"."
不能是第一个字符(我知道该怎么做)。但我需要让文本框接受这个字符“。” 不超过一次。如何 ?不,我不想使用MaskedTextBox
.
问问题
1312 次
2 回答
2
把它放在KeyPress
你的文本框中的事件中。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
string inputChar = e.KeyChar.ToString();
if (inputChar == ".")
{
if (textBox1.Text.Trim().Length == 0)
{
e.Handled = true;
return;
}
if (textBox1.Text.Contains("."))
{
e.Handled = true;
}
}
}
于 2013-01-14T08:42:48.817 回答
1
尝试这个
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text.IndexOf('.') != textBox1.Text.LastIndexOf('.'))
{
MessageBox.Show("More than once, not allowed");
textBox1.Text = textBox1.Text.Substring(0, textBox1.Text.Length - 1);
}
}
于 2013-01-14T08:43:15.653 回答