13 个解决方案
#1
这个可以用正则表达式!
#2
使用验证控件啊
#3
http://www.microsoft.com/china/msdn/library/langtool/vcsharp/winforms03162004.mspx
这是msdn的链接,有你所要得内容。
这是msdn的链接,有你所要得内容。
#4
用验证控件加真则表达式
#5
自己写一个控件继承自TextBox,然后拦截ProcessKeyEventArgs事件进行处理。参数的Msg属性为0x0102时判断它的Wparam属性,该属性就是输入的字符的ASCII码,做判断后如果是要屏蔽的字符,返回true(注意true才是会让字符不显示出来)
可以参见:
http://www.netyi.net/blog/user1/16/archives/2005/10.shtml
可以参见:
http://www.netyi.net/blog/user1/16/archives/2005/10.shtml
#6
WINFORM就不用说了很简单
WEBFORM推荐用自定义控件,下面我给你段只可输入数字的TEXTBOX控件,梢加修改可满足你的要求
Imports System
Imports System.Web
Imports System.Web.UI.WebControls
Public Class textoNumerico
Inherits TextBox
Private Const EVENTO_CONTROL As String = "onKeyPress"
Private Const SCRIPT_NUMERICO As String = "if (event.keyCode < 45 || event.keyCode > 57) event.returnValue=false;"
Protected Overrides Sub render(ByVal writer As System.Web.UI.HtmlTextWriter)
Attributes(EVENTO_CONTROL) = SCRIPT_NUMERICO
MyBase.Render(writer)
End Sub
End Class
WEBFORM推荐用自定义控件,下面我给你段只可输入数字的TEXTBOX控件,梢加修改可满足你的要求
Imports System
Imports System.Web
Imports System.Web.UI.WebControls
Public Class textoNumerico
Inherits TextBox
Private Const EVENTO_CONTROL As String = "onKeyPress"
Private Const SCRIPT_NUMERICO As String = "if (event.keyCode < 45 || event.keyCode > 57) event.returnValue=false;"
Protected Overrides Sub render(ByVal writer As System.Web.UI.HtmlTextWriter)
Attributes(EVENTO_CONTROL) = SCRIPT_NUMERICO
MyBase.Render(writer)
End Sub
End Class
#7
要是在WinForm中可以使用重写wndProc或者是利用win32API这个网上有许多.要是在WebForm中,就使用正则表达式.
#8
正则表达式呀
#9
http://www.microsoft.com/china/msdn/library/langtool/vcsharp/winforms03162004.mspx
#10
方法基本上楼上的都说得差不多了
#11
现在控件maskedTextBox或RegularExpress
#12
用左边的服务器控件(正则表达式)就可以了
#13
这是我以前做项目时写的一个小东西。你可以看看。
//有效性验证,只要求输入数字
private void txtNewNum_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
e.Handled = true;
if((e.KeyChar >= '0'&&e.KeyChar<='9'))
{
//字符长度小于六个时可以输入
if(txtNewNum.Text.Length-txtNewNum.SelectedText.Length<6)
{
//如果输入在0-9之间则执行。
e.Handled = false;
}
}
}
//有效性验证,只要求输入数字
private void txtNewNum_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
e.Handled = true;
if((e.KeyChar >= '0'&&e.KeyChar<='9'))
{
//字符长度小于六个时可以输入
if(txtNewNum.Text.Length-txtNewNum.SelectedText.Length<6)
{
//如果输入在0-9之间则执行。
e.Handled = false;
}
}
}
#1
这个可以用正则表达式!
#2
使用验证控件啊
#3
http://www.microsoft.com/china/msdn/library/langtool/vcsharp/winforms03162004.mspx
这是msdn的链接,有你所要得内容。
这是msdn的链接,有你所要得内容。
#4
用验证控件加真则表达式
#5
自己写一个控件继承自TextBox,然后拦截ProcessKeyEventArgs事件进行处理。参数的Msg属性为0x0102时判断它的Wparam属性,该属性就是输入的字符的ASCII码,做判断后如果是要屏蔽的字符,返回true(注意true才是会让字符不显示出来)
可以参见:
http://www.netyi.net/blog/user1/16/archives/2005/10.shtml
可以参见:
http://www.netyi.net/blog/user1/16/archives/2005/10.shtml
#6
WINFORM就不用说了很简单
WEBFORM推荐用自定义控件,下面我给你段只可输入数字的TEXTBOX控件,梢加修改可满足你的要求
Imports System
Imports System.Web
Imports System.Web.UI.WebControls
Public Class textoNumerico
Inherits TextBox
Private Const EVENTO_CONTROL As String = "onKeyPress"
Private Const SCRIPT_NUMERICO As String = "if (event.keyCode < 45 || event.keyCode > 57) event.returnValue=false;"
Protected Overrides Sub render(ByVal writer As System.Web.UI.HtmlTextWriter)
Attributes(EVENTO_CONTROL) = SCRIPT_NUMERICO
MyBase.Render(writer)
End Sub
End Class
WEBFORM推荐用自定义控件,下面我给你段只可输入数字的TEXTBOX控件,梢加修改可满足你的要求
Imports System
Imports System.Web
Imports System.Web.UI.WebControls
Public Class textoNumerico
Inherits TextBox
Private Const EVENTO_CONTROL As String = "onKeyPress"
Private Const SCRIPT_NUMERICO As String = "if (event.keyCode < 45 || event.keyCode > 57) event.returnValue=false;"
Protected Overrides Sub render(ByVal writer As System.Web.UI.HtmlTextWriter)
Attributes(EVENTO_CONTROL) = SCRIPT_NUMERICO
MyBase.Render(writer)
End Sub
End Class
#7
要是在WinForm中可以使用重写wndProc或者是利用win32API这个网上有许多.要是在WebForm中,就使用正则表达式.
#8
正则表达式呀
#9
http://www.microsoft.com/china/msdn/library/langtool/vcsharp/winforms03162004.mspx
#10
方法基本上楼上的都说得差不多了
#11
现在控件maskedTextBox或RegularExpress
#12
用左边的服务器控件(正则表达式)就可以了
#13
这是我以前做项目时写的一个小东西。你可以看看。
//有效性验证,只要求输入数字
private void txtNewNum_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
e.Handled = true;
if((e.KeyChar >= '0'&&e.KeyChar<='9'))
{
//字符长度小于六个时可以输入
if(txtNewNum.Text.Length-txtNewNum.SelectedText.Length<6)
{
//如果输入在0-9之间则执行。
e.Handled = false;
}
}
}
//有效性验证,只要求输入数字
private void txtNewNum_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
e.Handled = true;
if((e.KeyChar >= '0'&&e.KeyChar<='9'))
{
//字符长度小于六个时可以输入
if(txtNewNum.Text.Length-txtNewNum.SelectedText.Length<6)
{
//如果输入在0-9之间则执行。
e.Handled = false;
}
}
}