Есть несколько мест в моем приложении WPF, где я нужна кнопка, которая выглядит & чувствует себя как обычная кнопка, но:WPF: Как создать кнопку «шаблон», которая применяет стиль и имеет в нем изображение?
- Это показывает конкретный значок на нем (определяется как
{StaticResource EditIcon}
) - Он применяется стиль (определяется как
{StaticResource GrayOutButtonStyle}
)
Я бы предпочел определить эти атрибуты в одном месте, а не повторять их каждое место, когда используется кнопка. Каков подходящий способ сделать это в XAML?
-
Если это помогает, ниже того, что я сейчас делаю, но мне сказали, что это не так:
Обновлено: Является ли это неправильный путь? Есть ли способ исправить это так, что это «правильный путь»?
Я определяю кнопку в качестве шаблона с помощью ключа EditButton
:
<ControlTemplate x:Key="EditButton" TargetType="{x:Type Button}">
<Button Style="{StaticResource GrayOutButtonStyle}"
Command="{TemplateBinding Command}">
<Image x:Name="editImage" Source="{StaticResource EditIcon}" />
</Button>
</ControlTemplate>
Тогда я объявляю кнопку с шаблоном EditButton каждое место я хочу использовать его в приложении. Я также указываю Команду, которую вы здесь вызываете:
<Button Template="{StaticResource EditButton}" Command="..." />
Это не так? Каким будет правильный способ сделать это?
Проверьте этот ответ: HTTP://stackoverflow.com/a/16539347/760893 – Sonhja