У меня есть кнопка с этим стилем:Как создать общий привязку фонового изображения из шаблона управления?
<Style TargetType="Button" x:Key="btnStyle">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Image x:Name="img" Source="{TemplateBinding Tag}" Margin="{TemplateBinding Margin}"
Stretch="None"></Image>
<ControlTemplate.Triggers>
<Trigger Property="IsPressed" Value="true">
<Setter TargetName="img" Property="Source" Value="{DynamicResource imgClose_P}"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter TargetName="img" Property="Source" Value="{DynamicResource imgClose_H}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Как вы можете видеть, я буду связывать ImageSource свойству Tag кнопки. И в свойстве Tag я обязующий его к ResourceDictionary, что хранить этот битмап:
<BitmapImage x:Key="imgClose_N" UriSource="..\AppImages\mainWindow\TopBanner\CloseButton_sN.png" />
это дает мне возможность использовать этот «IMAGEBUTTON» на все протяжении приложения с различными фоновыми изображениями и один шаблоном. проблема заключается в том, как сохранить этот общий подход с помощью триггеров? Мне бы хотелось, чтобы триггер IsMouseOver менял фоновое изображение, но привязывал его к некоторому свойству элемента управления и не записывал его жестко закодированным в шаблоне управления. как это можно сделать?
может у пожалуйста, напишите пример первого предложения? – gilad
, чтобы быть яснее - я хотел бы, чтобы мои элементы управления имели 3 свойства: нормальное изображение bg, изображение hover bg и нажимаемое изображение bg, поэтому в шаблоне я привяжу его к ним. – gilad
Конечно, но позже. Мне нужно пойти на собрание прямо сейчас :-) Два часа или около того. Увидимся. – Clemens