CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  VB.NET

求教:怎样定义TextBox输入的文本格式?在线等

楼主dou8848()2006-11-04 13:15:24 在 .NET技术 / VB.NET 提问

怎样才能自定义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

相关问题

关键词

得分解答快速导航

  • 帖主:dou8848
  • fengkoulangjian
  • youzelin
  • Qim

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo