0
内バインディング私は、次のControlTemplateを持っている、と私はハード画像の絶頂と幅をコーディング避けたい、代わりに私は身長とImageコントロール、以下に示すように、テンプレート
の幅をバインドしたいと思います<Image Source="/Rotate.Pictures;component/Images/error.png"
Stretch="Uniform"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Height="14"
Width="14"/>
to TextBlockのテキスト(TextBlock "ErrorText")プロパティpath = "Height"。画像の高さと幅の両方をTextBlockのText HeightプロパティのHeight値にバインドする必要があります
私はこれをどのように達成できますか?
テンプレート:
<Grid IsSharedSizeScope="True">
<Grid.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="Validation.ErrorTemplate">
<Setter.Value>
<ControlTemplate>
<StackPanel>
<AdornedElementPlaceholder>
<Border BorderBrush="Red" BorderThickness="2"/>
</AdornedElementPlaceholder>
<ItemsControl ItemsSource="{Binding}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="/Rotate.Pictures;component/Images/error.png" Stretch="Uniform" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Height="14"
Width="14"/>
<TextBlock x:Name="ErrorText" Text="{Binding ErrorContent}" Foreground="Red"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Grid.Resources>
私はあなたが実際に何をしたいと思います設定ErrorContentにDataTriggerですErrorContentが空でない場合に画像が可視に表示されます。 – Clemens