Как я могу изменить кисть границы вкладки при изменении фокуса клавиатуры в стиле wpf - PullRequest
1 голос
/ 21 июня 2011

Я хочу изменить цвет границы элемента вкладки, когда он имеет фокус клавиатуры.Я написал следующий триггер в его стиле

<Style TargetType="{x:Type TabItem}" x:Key="{x:Type TabItem}">
 <Style.Triggers>
        <Trigger Property="IsKeyboardFocused" Value="True">
            <Setter Property="BorderBrush" Value="#800000" />
        </Trigger>

Он отлично работает для всех других элементов управления пользовательского интерфейса, кроме Tab Itme.Может ли кто-нибудь, пожалуйста, помогите

1 Ответ

1 голос
/ 21 июня 2011

Хотя это работает нормально для меня (убедитесь, что у вас есть фокус клавиатуры для просмотра изменения цвета)

 <Style TargetType="{x:Type TabItem}" >
            <Style.Triggers>
                <Trigger Property="IsKeyboardFocused" Value="True">
                    <Setter Property="BorderBrush" Value="Yellow"/>
                </Trigger>

                <Trigger Property="IsKeyboardFocused" Value="False">
                    <Setter Property="BorderBrush" Value="Blue"/>
                </Trigger>
            </Style.Triggers>
        </Style>

Вы также можете попробовать изменить цвет, если какой-либо элемент на вкладке имеет фокус клавиатуры

 <Style TargetType="{x:Type TabItem}" >
            <Style.Triggers>
                <Trigger Property="IsKeyboardFocusWithin" Value="True">

                    <Setter Property="BorderBrush" Value="Yellow"/>
                </Trigger>
                <Trigger Property="IsKeyboardFocusWithin" Value="False">

                    <Setter Property="BorderBrush" Value="Blue"/>
                </Trigger>
            </Style.Triggers>
        </Style>
...