绑定到上次验证错误

时间:2016-03-30 14:59:20

标签: wpf validation xaml

我有一个样式触发器,用于创建带有验证错误的工具提示:

<Trigger Property="Validation.HasError" Value="true">
                    <Setter Property="ToolTip" Value="{Binding RelativeSource={x:Static RelativeSource.Self},
                            Path=(Validation.Errors)[0].ErrorContent}"/>
                    <Setter Property="Validation.ErrorTemplate">
                        <Setter.Value>
                            <ControlTemplate>
                                <DockPanel>
                                    <Border BorderBrush="Red" BorderThickness="2" CornerRadius="2" Background="{x:Null}">
                                        <AdornedElementPlaceholder/>
                                    </Border>
                                </DockPanel>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
</Trigger>

我显示第一个错误(Validation.Errors)[0] .ErrorContent),但我想显示最后一个错误(最后一个是更优先的,Framework文本框最后添加了验证错误,例如字符串不代表日期。)

感谢。

1 个答案:

答案 0 :(得分:0)

嗯,首先,您可以将Path更改为所有错误,并添加仅返回最后一条消息的ValueConverter

许多人还将验证完全移至视图模型并放弃了验证规则,这样您就可以很好地控制您对视图的确切曝光。