我想要的是当用户以正常方式在文本框中输入文本时,文本更改为日期格式。 例如,当用户输入20110110文本更改为2011/01/10
时答案 0 :(得分:2)
你会在什么时候这样做?他们输入最后一个“0”的瞬间?
你可以挂钩TextChanged
事件并执行以下操作:
public void ReformatDate(object sender, EventArgs e)
{
TextBox textBox = (TextBox) sender;
DateTime dt;
// TODO: Work out what culture you want to parse/format in.
if (DateTime.TryParseExact(textBox.Text, "yyyyMMdd",
DateTimeStyles.None, out dt))
{
textBox.Text = dt.ToString("yyyy/MM/dd");
}
}
就我个人而言,我不确定作为一个用户,我想要这种行为,请注意。当文本框失去焦点时,您可能希望这样做。