C# winFrom 如何实现文本框只能输入像时间那样格式的文本

 我来答
瓜瓜向前冲啊
2011-03-08 · TA获得超过704个赞
知道小有建树答主
回答量:184
采纳率:0%
帮助的人:118万
展开全部
最好使用正则表达式,首先要引入using System.Text.RegularExpressions;命名空间
//不带时间的日期格式判断正则表达式
var reg = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/;
//带时间的日期格式判断正则表达式
var reg = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$/;

Regex re = new Regex(reg);
string date=textbox1.Text;//获得文本框输入的值
if (re.IsMatch(date))
{
MessageBox.Show("输入正确");
}
else
{
MessageBox.Show("输入错误");
}
追问
var???这是什么数据类型??winForm
yfeiaa
推荐于2016-11-19
知道答主
回答量:26
采纳率:0%
帮助的人:0
展开全部
用dateTimePicker控件
Format属性设为Time

ShowUpDown属性设为True

为样只通输入如23:59:59
取其中的文本为:
textBox1.Text = dateTimePicker1.Text;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
泳短画友2785
2011-03-08 · TA获得超过231个赞
知道答主
回答量:570
采纳率:0%
帮助的人:361万
展开全部
请说明你具体要哪种格式,格式不一样,代码也不一样。
你是要2011-1-1 还是 20:20:30
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yangxianbiao11
2011-03-08 · TA获得超过160个赞
知道答主
回答量:246
采纳率:0%
帮助的人:155万
展开全部
那你就要后台判断了,txt.tex.tostring("yyMMdd")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式