C#Wpf。如何在DatePickere中书写时自动添加点?

时间:2017-09-28 10:12:12

标签: c# wpf datepicker

正则表达式应在输入后检查并更改数据标签文本。我为此使用了keyUp事件。

private void DatePicker_KeyUp(object sender, RoutedEventArgs e)
{
    DatePicker dp = (sender as DatePicker);
    string text = dp.Text;
    if (Regex.IsMatch(text, @"^\d{3}"))
    {
        dp.Text = Regex.Replace(text, @"(\d{2})(\d)", "$1.$2");
    }
    else if (Regex.IsMatch(text, @"^(\d{2}\.\d{3})"))
    {
        dp.Text = Regex.Replace(text, @"(\d{2}\.\d{2})(\d)", "$1.$2");
    }
}

但dp.Text没有设置文字。有没有人知道如何将文本写入数据贴纸或其他一些在写入时添加分隔点的方法?

1 个答案:

答案 0 :(得分:0)

您可以尝试处理PreviewTextInput事件并设置Text的{​​{1}}属性:

DatePickerTextBox