Уникальные стили для фокусированной / текущей строки и выбранных строк в WPF DataGrid - PullRequest
3 голосов
/ 26 мая 2011

Я пытаюсь стилизовать фокусированную / текущую строку иначе, чем выбранные строки в сетке данных WPF, но не могу придумать элегантный способ сделать это.Самое близкое, что я придумал, - это использование «IsKeyboardFocusWithin», но оно исчезает, когда сам Datagrid теряет фокус.Я хотел бы как-то узнать по стилю, является ли строка той, которая содержит CurrentCell, и изменить цвет фона на основании этого.Есть ли способ сделать это?Вот моя текущая реализация с использованием "IsKeyboardFocusWithin"

<Style x:Key="PlaylistDataGridRowStyle"
       TargetType="{x:Type DataGridRow}">
    <Style.Triggers>            
        <Trigger Property="IsSelected"
                 Value="True">
            <Setter Property="Background"
                    Value="#CB88AACD" />                
        </Trigger>
        <Trigger Property="IsKeyboardFocusWithin"
                 Value="True">
            <Setter Property="Background"
                    Value="#FF88AACD" />
        </Trigger>
    </Style.Triggers>
    <Setter Property="Background"
            Value="Transparent" />
    <Setter Property="BorderThickness"
            Value="0" />
</Style>
...