DesignTime 错误 Wpf ValidatesOnTargetUpdated NullReferenceException
DesignTime Error Wpf ValidatesOnTargetUpdated NullReferenceException
我有与下面 link 中相同的问题,但答案并不令我满意。
ValidationRule ValidatesOnTargetUpdated NullReferenceException at Design Time
XAML
<TextBox x:Name="MyTextBox">
<TextBox.Text>
<Binding Path="MyText">
</Binding>
</TextBox.Text>
</TextBox>
代码隐藏
Binding binding = BindingOperations.GetBinding(MyTextBox, TextBox.TextProperty);
binding?.ValidationRules.Add(new MyValidationRule()
{
ValidatesOnTargetUpdated = true
});
它在代码隐藏中与此部分一起使用。但我正在寻找一个唯一的 XAML 解决方案,因为它更直观并且对我来说更易于维护。有人有想法吗?
我自己找到了 "solution"(或更多解决方法)。如果我将 ValidatesOnTargetUpdated 更改为具有所需值的 ValidationStep,设计器会为我工作。
注意:例如,如果您输入 ValidationStep="UpdatedValue" 和 ValidationStep="ConvertedProposedValue",TextBox 的行为会有所不同。有关 ValidationRule with ValidationStep="UpdatedValue" is called with BindingExpression instead of updated value.
的更多信息
但是,我找不到 ValidatesOnTargetUpdated 不起作用的原因。
我有与下面 link 中相同的问题,但答案并不令我满意。
ValidationRule ValidatesOnTargetUpdated NullReferenceException at Design Time
XAML
<TextBox x:Name="MyTextBox">
<TextBox.Text>
<Binding Path="MyText">
</Binding>
</TextBox.Text>
</TextBox>
代码隐藏
Binding binding = BindingOperations.GetBinding(MyTextBox, TextBox.TextProperty);
binding?.ValidationRules.Add(new MyValidationRule()
{
ValidatesOnTargetUpdated = true
});
它在代码隐藏中与此部分一起使用。但我正在寻找一个唯一的 XAML 解决方案,因为它更直观并且对我来说更易于维护。有人有想法吗?
我自己找到了 "solution"(或更多解决方法)。如果我将 ValidatesOnTargetUpdated 更改为具有所需值的 ValidationStep,设计器会为我工作。
注意:例如,如果您输入 ValidationStep="UpdatedValue" 和 ValidationStep="ConvertedProposedValue",TextBox 的行为会有所不同。有关 ValidationRule with ValidationStep="UpdatedValue" is called with BindingExpression instead of updated value.
的更多信息但是,我找不到 ValidatesOnTargetUpdated 不起作用的原因。