我正在使用以下模板进行验证错误:
<ControlTemplate>
<Border BorderBrush="Red" BorderThickness="1">
<Grid>
<Polygon Points="8,8 8,0 0,0"
Stroke="Black"
StrokeThickness="1"
Fill="Red"
HorizontalAlignment="Right"
VerticalAlignment="Top"
ToolTip="{Binding ElementName=adorner, Path=AdornedElement.(Validation.Errors)[0].ErrorContent}" />
<AdornedElementPlaceholder x:Name="adorner"/>
</Grid>
</Border>
</ControlTemplate>
ToolTip 工作正常,但在离开当前记录后抛出以下异常:
System.Windows.Data 错误:17:无法从“(Validation.Errors)”(类型“ReadOnlyObservableCollection`1”)获取“Item []”值(类型“ValidationError”)。BindingExpression:Path=AdornedElement.(0)[0].ErrorContent; DataItem='AdornedElementPlaceholder'(名称='装饰者');目标元素是 'Polygon' (Name=''); 目标属性是“工具提示”(类型“对象”) ArgumentOutOfRangeException:“System.ArgumentOutOfRangeException:指定的参数超出了有效值的范围。
我尝试了HasError
财产,但失败了。有人有什么想法吗?