Как правильно изменить цвет аэро на GridViewColumnHeader - PullRequest
0 голосов
/ 27 декабря 2018

В настоящее время я пытаюсь стилизовать GridView, я хочу изменить цвет GridViewColumnHeader при наведении на него курсора с сине-белым эффектом Aero по умолчанию на статический синий цвет.Но теперь он меняет цвет пустого GridView, и мне кажется, что вместо этого нужно нацелить кнопку, поскольку она происходит из базы кнопок iirc.

Я попытался создать свой собственный стиль для этогоКонкретная проблема, я изменил некоторые сеттеры и некоторые триггеры стиля.

<ListView Margin="10" Name="lvUsers">
            <ListView.View>
                <GridView>
                    <GridViewColumn Header="Name" Width="120" DisplayMemberBinding="{Binding Name}" />
                    <GridViewColumn Header="Age" Width="50" DisplayMemberBinding="{Binding Age}" />
                    <GridViewColumn Header="Mail" Width="150" DisplayMemberBinding="{Binding Mail}" />
                </GridView>
            </ListView.View>
        </ListView>

И ресурс неуравновешенный

<Style TargetType="GridViewColumnHeader">
        <Setter Property="Background" Value="Green"/>
        <Setter Property="Foreground" Value="Yellow"/>
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="true">
                <Setter Property="Background" Value="Red"/>
            </Trigger>
        </Style.Triggers>
    </Style>

Ожидаемый результат - когда пользователь наводит курсор, скажем Name, он меняет цветот стандартного Aero синего белого до статического синего цвета.

РЕДАКТИРОВАТЬ Я хочу изменить цвет, когда пользователь НАЖИМАЕТ над GridViewColumnHeader

1 Ответ

0 голосов
/ 29 декабря 2018

Заголовок списка был реализован с помощью кнопок, как 50 лет назад :).Не в последнее время.Определенно нет в WPF.Вы делаете именно то, что вам нужно, когда вы хотите изменить цвет фона столбца.

Если вы хотите стилизовать сам заголовок, вам нужно изменить шаблон элемента управления.Часть, которую вы ищете, на самом деле представляет собой не что иное, как несколько вложенных границ, сеток и градиентных кистей, которые используются для заполнения прямоугольников.Однако это не учитывает все функциональные возможности в заголовке (перетаскивание, нажатие, изменение размера и т. Д.), Поэтому шаблон и вспомогательные материалы на самом деле довольно много.Моя индивидуальная версия содержит около 400 строк Xaml.

Вы можете выгрузить шаблон в Blend.К сожалению, в кистях не используются клавиши, поэтому здесь нет ярлыков:).

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