Szablon błędu sprawdzania poprawności - wyjątek wiążący
Używam następującego szablonu dlabłąd sprawdzania poprawności:
<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>
Etykieta narzędzia działa poprawnie, ale po opuszczeniu bieżącego rekordu generowany jest następujący wyjątek:
System.Windows.Data Błąd: 17: Nie można uzyskać wartości „Item []” (wpisz „ValidationError”) z „(Validation.Errors)” (wpisz „ReadOnlyObservableCollection`1”). BindingExpression: Path = AdornedElement. (0) [0] .ErrorContent; DataItem = 'AdornedElementPlaceholder' (Name = 'adorner'); elementem docelowym jest 'Polygon' (Name = ''); właściwość target to 'ToolTip' (wpisz 'Object') ArgumentOutOfRangeException: 'System.ArgumentOutOfRangeException: Określony argument był poza zakresem poprawnych wartości.
Próbowałem zHasError
nieruchomości, ale nie powiodło się. Ktoś ma jakiś pomysł?