Continuation of this issue.
I want to implement this type ListView:

It should have 2 things:
- Multi-line column header
- Different types of data connected through
ItemsSourcewill be displayed differently.
To solve (1), I am trying to use HeaderTemplate:
<ListView>
<ListView.View>
<GridView>
<GridViewColumn Header="A" DisplayMemberBinding="{Binding A}">
<GridViewColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding}"/>
</DataTemplate>
</GridViewColumn.HeaderTemplate>
</GridViewColumn>
...
DataTemplate might be more complicated:
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding}" HorizontalAlignment="Center"/>
<GridViewHeaderRowPresenter Grid.Row="1" Columns="{StaticResource ResourceKey=aaa}"/>
</Grid>
</DataTemplate>
Where aaais the key to some GridViewColumnCollection:
<GridViewColumnCollection x:Key="aaa">
<GridViewColumn Header="B" DisplayMemberBinding="{Binding B}"/>
<GridViewColumn Header="C" DisplayMemberBinding="{Binding C}"/>
</GridViewColumnCollection>
This, however, leads to poor results:

It looks ugly when you click, resizing Bwill only change C, but not A.
Question: How to create a multi-line column header?
(2), item Mode ( 2 - :
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Style.Triggers>
<DataTrigger Binding="{Binding Mode}" Value="2">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListViewItem">
<StackPanel x:Name="PART_Panel" Orientation="Horizontal">
<TextBlock Text="{Binding D}"/>
<TextBlock Text="{Binding E}" Margin="5,0"/>
</StackPanel>
...
, ObservableCollection<object> ( A, B, C D, E, Mode), ..

Mode = 2. ListView ( Vista) , Mode != 2 . , Mode = 2 :

A-AA ( ), B-BB ( , , ).
, , ? ? Vista! ListViewItem:
<ControlTemplate.Triggers>
<Trigger Property="Selector.IsSelected" Value="True">
<Setter Property="Background" TargetName="PART_Panel">
<Setter.Value>
<DynamicResource ResourceKey="{x:Static SystemColors.HighlightBrushKey}" />
</Setter.Value>
</Setter>
...
... :

: 2-22-222 ( Vista) A-AA .
: , ItemSource? Vista?
P.S.: ( ) . , ListView, , ( - , , ).