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 不起作用的原因。