C# winform中textbox编辑框控件中只允许输入时间的实现
1.点击需要设置的编辑框控件右键->事件
2.找到“leave”事件,在leave事件中进行编辑框输入文本的检测
3.leave事件的实现代码:
//只允许输入时间,其他禁止输入(焦点离开控件时进行检测并提醒输入错误提示)
string szTime = "";
private void tbTime_Leave(object sender, EventArgs e)
{
if (!System.Text.RegularExpressions.Regex.IsMatch(tbTime.Text, "^[0-2][0-9]:[0-5][0-9]$"))
{
DialogResult dr = MessageBox.Show("输入字符或格式有误,重新输入,如00:00?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (DialogResult.Yes != dr)//不重新输入
{
tbTime.Text = szTime;
}
else//重新输入
{
tbTime.Text = szTime;
tbTime.Focus();
}
}
}
4.在编辑格式不正确情况下,想还原编辑前的值,则需要在“Enter”事件中进行编辑前值的保存,这里定义了szTime变量,用于临时保存编辑框中的值。“Enter”实现代码如下:
private void tbTime_Enter(object sender, EventArgs e)
{
szTime = tbTime.Text;
}