2010-07-14 1 views
0

Я хочу сделать 2 разных стиля для элемента управления ToolBar: один основан на черных кнопках и один на серебряных кнопках. Но я не могу понять, как применять стили кнопок к собственным стилям панели инструментов. Ниже только позволяет один стиль для кнопок:Определение двух разных стилей для ToolBar в WPF?

<Style x:Key="{x:Static ToolBar.ButtonStyleKey}" 
     BasedOn="{StaticResource BlackButtonStyle}" 
     TargetType="{x:Type Button}"/> 

ответ

0

Не уверен, если это будет работать или нет ... Я предполагаю, что вы хотите только один стиль в то время (если у вас есть два бара инструмента и хотели, чтобы каждый чтобы быть разными, вам нужны два разных стиля с двумя разными ключами ...

, который сказал, что если вы хотите изменить стиль от черного до серебристого, можете ли вы получить свой ресурс в коде и установить свойство BasedOn этот стиль для вашего ресурса SilverButtonStyle?

+0

В одном и том же экране есть две панели инструментов: с черным сверху и серебристым на нижней. {X: Static ToolBar.ButtonStyleKey} позволяет только один стиль для кнопки одновременно. На данный момент я просто заменяю stackpanel для одной из панелей инструментов ... – mobileTofu

+0

Ahhh ... Я вижу проблему лучше сейчас. Не уверен, что это сработает ... но каждая панель инструментов имеет свой собственный раздел .Resources ... можете ли вы поместить свой стиль, указанный вами выше, в каждый раздел ресурсов панели инструментов (и для того, который вы хотите стать серебром, изменить функцию BasedOn для использования SilverButtonStyle)? Просто мысль, возможно, вы уже это пробовали. – Scott

+0

Привет, Скотт, я думаю, это должно сработать. Или я могу использовать именованный стиль (с ключом). Благодарю. – mobileTofu