Есть ListView, в который по колонкам выводится содержимое из ObservableCollection. Для вывода содержимого по колонкам к ListView привязан GridView, объявленный в Window.Resources в качестве статического ресурса:
<GridView x:Key="GridView1">
<GridView.Columns>
<GridViewColumn Header="Имя" DisplayMemberBinding="{Binding Path=Name}"></GridViewColumn>
<GridViewColumn Header="Тип" DisplayMemberBinding="{Binding Path=Type}" Width="60"></GridViewColumn>
<GridViewColumn Header="Размер" DisplayMemberBinding="{Binding Path=Size}" Width="60"></GridViewColumn>
<GridViewColumn Header="Дата" DisplayMemberBinding="{Binding Path=Date}" Width="130"></GridViewColumn>
</GridView.Columns>
</GridView>
Объявление ListView:
<ListView View="{StaticResource GridView1}" Name="folderPanel1"></ListView>
Без стиля вывод по колонкам работает нормально, но стоит привязать стиль, как заголовки колонок пропадают (содержимое выводится нормально):
<Style TargetType="{x:Type ListView}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListView}">
<Border
Name="Button"
Background="{StaticResource ListViewBackgroundBrush}"
BorderBrush="{StaticResource StandartBorderBrush}"
BorderThickness="1" CornerRadius="3">
<ScrollViewer Focusable="False">
<ItemsPresenter Margin="2"></ItemsPresenter>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Стиль всего лишь заготовка, на простоту не обращайте внимание. Как сделать так, чтобы заголовки колонок не пропадали?