Ich habe ein Benutzersteuerelement mit einer Steuervorlage zur Anzeige von Validierungsfehlern, Validierungsvorlage:
<ControlTemplate x:Key="TextBoxPropertyValidationTemplate">
<StackPanel>
<Border BorderBrush="Red" BorderThickness="1">
<AdornedElementPlaceholder x:Name="MyAdorner" />
</Border>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image Grid.Column="0" MaxHeight="16" MaxWidth="16"
Source="{Binding Source={StaticResource ValidationIcon}, Converter={StaticResource UriConverter}}"
Margin="1" RenderOptions.BitmapScalingMode="HighQuality"
VerticalAlignment="Center" HorizontalAlignment="Center" />
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Left"
Text="{Binding ElementName=MyAdorner, Path=AdornedElement.(Validation.Errors)[0].ErrorContent}"
TextWrapping="Wrap" Grid.Column="1" FontSize="10" Foreground="Red" />
</Grid>
</StackPanel>
</ControlTemplate>
Und ich scheine ein ziemlich ärgerliches Problem nicht umgehen zu können, das so aussieht:
Ich habe versucht, um mit Rändern auf der Benutzer-Steuerelement und auf der Vorlage auch einige Height=Auto usw. spielen, aber alle diese nicht wirklich helfen. Irgendwelche Ideen jemand?
Wenn das hilft, ist die Haupt-Benutzerkontrolle (die die mit Validierung verschachtelt) in einem TabItem mit einem AdornerDecorator.
Jede Hilfe ist willkommen.