代码之家  ›  专栏  ›  技术社区  ›  CodeMonkey

在控件失去焦点之前,WPF验证错误仍然存在

  •  0
  • CodeMonkey  · 技术社区  · 7 年前

    我得到一个文本框,在上面我在xaml中添加了一个验证规则。该规则起作用并检测错误,但仅在用户将焦点放在窗口中的其他元素(如其他文本框)之后。

    <TextBox x:Name="textBoxLongitude" Grid.Row="1" Grid.Column="1" Margin="0,0,0,10" VerticalContentAlignment="Center">
            <TextBox.Text>
                <Binding Path="CustomerLongitude">
                    <Binding.ValidationRules>
                        <local:IsDoubleValidationRule MaxValue ="180"/>
                    </Binding.ValidationRules>
                </Binding>
            </TextBox.Text>
        </TextBox>
    

    我试图通过将此添加到文本框的xaml中来解决此问题:

    TextChanged="textBoxTextChanged"
    

    private void textBoxTextChanged(object sender, TextChangedEventArgs e)
    {
         CommandManager.InvalidateRequerySuggested();
    }
    

    这没用。。

    如何使验证规则检测到错误,以及何时修复错误,即使用户不需要将焦点交给另一个控件?