У меня есть Стиль в моем Window.Resources:
<Style x:Key="Header" TargetType="GridViewColumnHeader">
<Setter Property="Content">
<Setter.Value>
<StackPanel Orientation="Horizontal">
<Label Width="80" HorizontalContentAlignment="Center" Content="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=GridViewColumnHeader, AncestorLevel=1}, Path=Tag}" />
<StackPanel Orientation="Vertical">
<Polygon Name="P_up" Points="0,5 10,5, 5,0" Stroke="Black" Fill="Black" Margin="3" Visibility="Visible"/>
<Polygon Name="P_down" Points="0,0 10,0, 5,5" Stroke="Black" Fill="Black" Margin="3" Visibility="Hidden"/>
</StackPanel>
</StackPanel>
</Setter.Value>
</Setter>
<EventSetter Event="Click" Handler="Header_Click"/>
</Style>
Когда я устанавливаю этот стиль для моего ListView (GridViewColumnHeader), как это:
<ListView Height="300" x:Name="lv" ItemsSource="{Binding PLCs}">
<ListView.View>
<GridView>
<GridViewColumn Width="120">
<GridViewColumnHeader Name="myNewText" Tag="test" Style="{StaticResource Header}"/>
</GridViewColumn>
<GridViewColumn Width="120">
<GridViewColumnHeader Name="myNewText2" Tag="test2" Style="{StaticResource Header}"/>
</GridViewColumn>
<GridViewColumn Width="120">
<GridViewColumnHeader Tag="test32" Style="{StaticResource Header}"/>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
Привязка к предкам Tag работает и Polygon s показаны, но только для последнего из GridViewColumns ,первые два остаются пустыми.Может кто-нибудь сказать мне, что я делаю не так?Поскольку код одинаков для всех трех столбцов, я предположил, что он даст одинаковые результаты для всех трех.Я предполагаю, что привязка Content Label или TargetType Style не верна.
Спасибоза вашу помощь.