2014-10-02 87 views
0

我有一个带有正则表达式验证的TextBox。它将用于计算一年中的天数,所以我想将最大值设置为366.我为它编写了LINQ,但不知何故,它始终返回false。如果我超过它并且我的验证变为false,我希望程序在我的虚假陈述中自动设置最大值。我的代码:如何设置最大整数值为文本框的值

XAML:

<TextBox PreviewTextInput="Num" MaxLength="3" HorizontalAlignment="Left" Height="25" Margin="300,130,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="140" Name="tNum" TextChanged="tbNum_TextChanged"/> 

请帮我:)

+1

简单的答案是找到并使用许多NumericUpDown控件之一。 – 2014-10-02 11:18:42

回答

0

您可以使用键按下事件,并检查您的文本框+被按下的键的含量超过365

private void TextBox_KeyDown(object sender, KeyEventArgs e) 
{ 
    if (e.Key == Key.Enter) 
    { 
     //write your validating 
    } 
} 
+1

Thx解决了。我的代码没问题,只有Textchanged事件“为我窃听”了它。用KeyDown或LostFocus它正在工作! – Tom026 2014-10-02 12:08:47

+0

不用客气。你的代码不能与textchanged事件一起工作的原因是你离开文本框后它会得到triggert。 – 2014-10-02 14:40:16

+0

那么如果用户没有按回车键会发生什么情况,而只是点击了输入键呢? – 2014-11-26 06:09:04

相关问题