求教:怎样定义TextBox输入的文本格式?在线等
怎样才能自定义TextBox输入的文本格式?
比如:
日期类型的:文本框里默认显示00-00-00
数字类型的:默认2个小数点 00.00
问题点数:20、回复次数:15Top
1 楼dou8848()回复于 2006-11-04 18:03:32 得分 0
晕,没人知道吗Top
2 楼lengfo()回复于 2006-11-04 20:25:31 得分 0
upTop
3 楼iamdodo(深沉的小麦兜)回复于 2006-11-04 20:57:17 得分 0
正则表达式吧,如果用户没有输入指定的格式,给出一个提示信息,日期类型的正则表达式网上很多,你可以自己搜一下Top
4 楼dou8848()回复于 2006-11-04 23:44:57 得分 0
能提供以下代码吗?本人找了,没有找到我想要的。:(Top
5 楼KahnWinsock(卡恩)回复于 2006-11-05 00:05:03 得分 0
你想要的2003和2005里是没有。想要这样的东西,要么第三方控件,要么自己定义。
你可以继承.net的Text,然后加进去属性和方法来实现你的要求。Top
6 楼xjl1980_81(什么都不会)回复于 2006-11-06 08:34:03 得分 0
有更好的办法吗???
我想做个日期类型的,具体有代码吗??Top
7 楼fengkoulangjian(风口浪尖)回复于 2006-11-06 09:17:31 得分 5
晕,LZ对MaskedTextBox控件没有了解么?想要什么格式的都可以啊.自己试一下.Top
8 楼youzelin()回复于 2006-11-06 12:44:41 得分 5
正则表达式:
(1)string1: ^\d{2}-\d{2}-\d{2}$
(2)string2: ^\d{2}.d{2}$
可以这样用(拿第一个举例):
Dim rgx1 As New Regex(string1)
If Not (rgx.IsMatch(SomeTextBox.Text)) Then
' 显示错误
e.Cancel = True
End If
你试试看这样可以吗?:)Top
9 楼43720938(烦烦烦烦)回复于 2006-11-06 13:37:33 得分 0
markTop
10 楼Qim(莫名-从星做起......)回复于 2006-11-06 13:57:22 得分 10
日期类型的:文本框里默认显示00-00-00
数字类型的:默认2个小数点 00.00
日期类型:
try
{
日期.text. = 日期.text.tostring(yy-MM-dd);
}
catch
{
MessageBox.Show("日期格式不正确");
}
数字:
添加数字的文本框text_change事件。
{
Double d = 0;
try
{
d = Double.Parse(数字.text);
}
catch
{
d = 0;
return;
}
数字.text = d.tostring(".00");
}
试试行不行?Top
11 楼Qim(莫名-从星做起......)回复于 2006-11-06 14:05:51 得分 0
好像不行:(,下面这个可以。
private void textBox2_TextChanged(object sender, EventArgs e)
{
double d = 0;
try
{
d = double.Parse(textBox2.Text);
}
catch
{
if (textBox2.Text.Length > 0)
{
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);
}
}
}
private void textBox2_Leave(object sender, EventArgs e)
{
textBox2.Text = Double.Parse(textBox2.Text).ToString(".00");
}Top
12 楼Qim(莫名-从星做起......)回复于 2006-11-06 14:07:35 得分 0
private void textBox2_Leave(object sender, EventArgs e)
{
textBox2.Text = Double.Parse(textBox2.Text).ToString("00.00");
}Top
13 楼qiufa()回复于 2006-11-10 10:09:31 得分 0
我有代码 有问题发信息Top
14 楼gezichong(鸽子虫)回复于 2006-11-10 10:22:21 得分 0
用正则表达式....比较好.....Top
15 楼dou8848()回复于 2006-11-23 22:04:39 得分 0
谢谢!Top




