我的问题是,以下文本框元素/控件中的LostFocus事件在验证规则能够滤除无效输入之前触发。
<TextBox
x:Name="reviewPeriodWksTextBox"
Grid.Column="2"
HorizontalAlignment="Left"
LostFocus="reviewPeriodWksTextBox_LostFocus"
MaxLength="3"
Style="{StaticResource TextBoxStyle}"
Validation.ErrorTemplate="{StaticResource TextBoxInputErrorTemplate}">
<TextBox.Text>
<Binding Path="ReviewPeriodWks" Mode="TwoWay" NotifyOnValidationError="True" ValidatesOnExceptions="True" UpdateSourceTrigger="LostFocus">
<Binding.ValidationRules>
<local:ValidateRangeMembership_Integer LowerBound ="0" UpperBound ="52"/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
UpdateSourceTrigger =“ PropertyChanged”也会产生类似的不令人满意的结果。 有没有一种方法可以阻止LostFocus事件触发,直到验证规则滤除了LostFocus事件使用并杀死它的所有无效输入之后? 也许是通过触发验证规则作为事件代码的第一步?