[英]WPF validation custom trigger
我有几个启用了验证的绑定TextBox。
<TextBox Text="{Binding Name, ValidatesOnDataErrors=True" />
<TextBox Text="{Binding Password, ValidatesOnDataErrors=True" />
<Button Command="{Binding OkCommand}"/>
打开视图时,默认情况下这些文本框无效,因为我的文本框上没有NotEmpty。
我希望仅在最后一次单击“确定”时进行验证。 如何从代码(按钮的命令)触发验证?
您可以通过将UpdateSourceTrigger
设置为Explicit
来明确触发验证,例如:
<TextBox x:Name="textBox1"
Text="{Binding Name, ValidatesOnDataErrors=True,
UpdateSourceTrigger=Explicit}"/>
<TextBox x:Name="textBox2"
Text="{Binding Password, ValidatesOnDataErrors=True,
UpdateSourceTrigger=Explicit}" />
<Button Click="Button_Click"/>
在处理程序中,您必须像这样显式更新源代码-
private void Button_Click(object sender, RoutedEventArgs e)
{
textBox1.GetBindingExpression(TextBox.TextProperty).UpdateSource();
textBox2.GetBindingExpression(TextBox.TextProperty).UpdateSource();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.