Jak utworzyć styl dla przeciągniętego nagłówka kolumny GridView
W tym przykładzie pokazano, jak zmienić wygląd przeciągniętego GridViewColumnHeader obiektu, gdy użytkownik zmieni położenie kolumny.
Przykład
Gdy przeciągniesz nagłówek kolumny do innej lokalizacji używanej ListViewGridView w trybie wyświetlania, kolumna zostanie przeniesiona do nowej pozycji. Podczas przeciągania nagłówka kolumny oprócz oryginalnego nagłówka pojawia się zmienna kopia nagłówka. Nagłówek kolumny w obiekcie GridView jest reprezentowany GridViewColumnHeader przez obiekt.
Aby dostosować wygląd przestawnych i oryginalnych nagłówków, możesz ustawić wartość Triggers , aby zmodyfikować element GridViewColumnHeaderStyle. Są one Triggers stosowane, gdy IsPressed wartość właściwości to true
, a Role wartość właściwości to Floating.
Gdy użytkownik naciśnie przycisk myszy i przytrzymuje go w dół, gdy mysz wstrzymuje się na GridViewColumnHeader, IsPressed wartość właściwości zmieni się na true
. Podobnie, gdy użytkownik rozpocznie operację przeciągania, Role właściwość zmieni się na Floating.
W poniższym przykładzie pokazano, jak ustawić Triggers , aby zmienić Foreground kolory i Background oryginalnych i przestawnych nagłówków, gdy użytkownik przeciągnie kolumnę do nowej pozycji.
<ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
<ControlTemplate.Triggers>
<Trigger Property="IsPressed"
Value="true">
<Setter TargetName="HighlightBorder"
Property="Visibility"
Value="Hidden"/>
<Setter TargetName="PART_HeaderGripper"
Property="Visibility"
Value="Hidden"/>
<Setter Property="Background"
Value="SkyBlue"/>
<Setter Property="Foreground"
Value="Yellow"/>
</Trigger>
<Trigger Property="Role"
Value="Floating">
<Setter TargetName="PART_HeaderGripper"
Property="Visibility"
Value="Collapsed"/>
<Setter Property="Background"
Value="Yellow"/>
<Setter Property="Foreground"
Value="SkyBlue"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
Zobacz też
.NET Desktop feedback