【发布时间】:2011-06-29 05:25:50
【问题描述】:
我有一个带有控件模板的用户控件来显示验证错误,验证模板:
<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>
而且我似乎无法解决一个相当烦人的问题,如下所示:
我一直在尝试使用用户控件和模板上的边距以及一些 Height=Auto 等,但所有这些都没有真正的帮助。有什么想法吗?
如果这有助于主用户控件(嵌套有验证的控件)位于带有 AdornerDecorator 的 TabItem 中。
任何帮助表示赞赏。
【问题讨论】:
-
你希望这个是什么样子的?我看到了重叠,但我不清楚你希望它如何表现。
标签: wpf validation controltemplate adorner