WPF заголовок списка просмотра при наведении / нажатом цвете

2

Я пытаюсь создать заголовок списка в зависимости от наведения/нажатия/и т.д. события.

До сих пор я пробовал несколько вещей, таких как триггер вроде следующего, но это не работает на моей машине (Vista Ultimate x64)

<Style x:Key="GridViewColumnHeaderStyle1" TargetType="{x:Type GridViewColumnHeader}">
    <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="true">
            <Setter Property="Background" Value="Green"/>
        </Trigger>
    </Style.Triggers>
</Style>

И код списка:

     <ListView VerticalAlignment="Bottom" IsSynchronizedWithCurrentItem="True">
        <ListView.View>
            <GridView ColumnHeaderContainerStyle="{StaticResource GridViewColumnHeaderStyle1}" >
                <GridViewColumn Header="abc"/>
                <GridViewColumn Header="cde"/>
            </GridView>
        </ListView.View>
        <ListView.DataContext>
            <DataTemplate>
                <ListViewItem Content="zxc"/>
            </DataTemplate>
        </ListView.DataContext>
    </ListView>

Поведение, которое я ожидаю, для фона заголовка, которое я наводил, чтобы стать зеленым.

Любые идеи?

НТ

  • 0
    В новом проекте я поместил ваш ListView в Grid, а стиль в Window.Resources, и это сработало.
Теги:
wpf
hover
listview
styles

4 ответа

1

Это подтверждается как ошибка и не будет исправлено вовремя для .NET framework 4.0 в соответствии с ответом гуру MS в Microsoft Connect.

Hooray для программного обеспечения с закрытым исходным кодом еще раз...

  • 0
    Слушаю вас ...
1

Я сообщил об этом как об ошибке в Connect:

https://connect.microsoft.com/WPF/feedback/ViewFeedback.aspx?FeedbackID=475669

0

Просто возьмите предоставленный контрольный шаблон Microsoft и настройте его, как вы считаете нужным. Это то, как мы удаляем все дополнительные выделения, добавляемые Microsoft для каждого элемента управления.

Вы можете найти шаблоны по этой ссылке: http://msdn.microsoft.com/en-us/library/aa970773(v=VS.100).aspx

0

Да, да.

Если бы это был open-source, я бы свернул его, исправил и сам предоставил патч. Тогда мне и другим, которые будут использовать версию "разработки", выиграют в среднем. Теперь мы даже не знаем, когда это будет исправлено, если когда-либо. Есть так много ошибок, которые не были исправлены в течение многих лет в .NET и других проектах с закрытым исходным кодом.

Закрытый источник не позволяет вам это делать. И это еще одна причина, по которой я буду стремиться использовать открытый исходный код.

Отношения NT

Ещё вопросы

Сообщество Overcoder
Наверх
Меню