Как стилизовать фон пункта меню - PullRequest
1 голос
/ 23 ноября 2011

Я не могу понять, как изменить фон с скучного серого цвета на что-то другое.Когда я меняю фон MenuItem s, меняется только сам фон предметов, а не весь фон.Кто-нибудь знает, как это сделать?

Вот изображение моего текущего меню:

enter image description here

Я могу сделать это, но как насчет границы?

enter image description here

Ответы [ 2 ]

0 голосов
/ 23 ноября 2011

 <Menu Background="Gray" Height="23">
            <MenuItem Header="Menu1" Background="Green">
                <MenuItem Header="sub1" Background="Red"/>
                <MenuItem Header="sub2" Background="Yellow"/>
            </MenuItem>
     </Menu>

enter image description here

Обновление: Мое выше решение не изменит ВСЕфон, как вы упомянули.Чтобы иметь совершенно новый стиль, прочитайте это: https://stackoverflow.com/q/519012/352101

0 голосов
/ 23 ноября 2011

Попробуйте:

<Style TargetType="{x:Type Menu}">
     <Setter Property="OverridesDefaultStyle" Value="True"/>
     <Setter Property="Background" Value="Black" />
     <Setter Property="Foreground" Value="White" />    
</Style>

<Style TargetType="{x:Type MenuItem}">
     <Setter Property="OverridesDefaultStyle" Value="True"/>
     <Setter Property="Background" Value="Black" />
     <Setter Property="Foreground" Value="White" />
</Style>

MSDN: Стили и шаблоны меню

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...