我想创建一个仅限数字的文本框。我想将其添加到Visual Studio 2008中的控件工具箱
我已经将函数构建为仅允许数字。
如何在工具箱中显示它?
答案 0 :(得分:6)
这是您创建数字TextBox
:
public class NumericTextBox : TextBox
{
protected override void OnKeyPress(KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
base.OnKeyPress(e);
}
}
答案 1 :(得分:0)
按键
调用此方法 function NumberOnly(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
答案 2 :(得分:0)
您好,您可以在文本框的textchanged事件中执行此类操作。
这是一个演示
private void textBox1_TextChanged(object sender, EventArgs e)
{
string actualdata = string.Empty;
char[] entereddata = textBox1.Text.ToCharArray();
foreach (char aChar in entereddata.AsEnumerable())
{
if (Char.IsDigit(aChar))
{
actualdata = actualdata + aChar;
// MessageBox.Show(aChar.ToString());
}
else
{
MessageBox.Show(aChar + " is not numeric");
actualdata.Replace(aChar, ' ');
actualdata.Trim();
}
}
textBox1.Text = actualdata;
}
答案 3 :(得分:-1)
不要重新发明轮子。下载这个:
http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/NumericUpDown/NumericUpDown.aspx
编辑:
好。我正在接受一些三年之久的建议。目前,我建议查看jQuery UI的内容。