我有一個文本框中,我正在使用事件TextChanged來檢查該字符串是否與RegEx有效,並顯示一個消息框,如果它沒有。當我使用在線正則表達式工具(如http://regexpal.com/)測試正則表達式時,它似乎工作正常。但是當我運行我的代碼時,它不能按預期工作。我從來沒有看到消息框出現。任何幫助,將不勝感激。我的正則表達式假設檢查0-5之前的任何數字。有兩位小數(如果有的話)。wpf文本框驗證與正則表達式
private void txtValInput_TextChanged(object sender, TextChangedEventArgs e)
{
string input = (sender as TextBox).Text; //1234567
if(!Regex.IsMatch(input, @"^\d{1,5}|\d{0,5}\.\d{1,2}$"))
{
MessageBox.Show("Error!, check and try again");
}
}
爲什麼你不使用本地變量輸入?你正在創建它,所以你應該使用它/ IsMatch –
@moncadad - 我已更新。仍然是相同的結果。 – Calvin