Отключение списка не меняет цвет фона в стиле - PullRequest
5 голосов
/ 31 января 2012

У меня есть этот простой стиль, который не меняет ListBox Background, когда ListBox отключен:

<Style TargetType="ListBox" >                    
    <Style.Triggers>
        <Trigger Property="IsEnabled" Value="True">
            <Setter Property="Background" Value="Red"/>
        </Trigger>
        <Trigger Property="IsEnabled" Value="False">
            <Setter Property="Background" Value="Orange"/>
        </Trigger>
    </Style.Triggers>
</Style>

Snoop не помогает мне в этом, и я не могу понять простойпуть без переопределения шаблонов.У кого-нибудь есть простой способ заставить это работать?ТИА.

Ответы [ 2 ]

2 голосов
/ 31 января 2012

Единственный способ сделать это - переопределить шаблон

0 голосов
/ 13 июня 2013

Вы можете изменить цвет фона самого списка, когда список отключен, просто изменив цвета, которые использует встроенный шаблон.Вы можете сделать это с помощью стилевых ресурсов.Просто вставьте приведенный ниже код в элемент Listbox, и фон будет прозрачным при отключении поля.

<ListBox.Style>
    <Style TargetType="{x:Type ListBox}">
        <Style.Resources>
            <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent"/>
        </Style.Resources>
    </Style>
</ListBox.Style>

Также очень часто требуется изменить цвет фона одного элемента, когда он выделен икогда коробка теряет фокус .. чтобы изменить их, вы можете сослаться на этот пост: https://stackoverflow.com/a/7298301/1721136

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