Mam ListView, które wyświetla treści w GridView. Muszę zrobić dość zaawansowane zabawy z GridViewColumnHeader, więc zaczęłam definiować ControlTemplate, w którym zrobię wkrótce moje czary mary. Mam na razie jednak pierwszy zonk - zamiast dwóch kolumn, widzę 3. Trzecia jest pusta, żadnej zawartości i header bez nazwy, ale ewidentnie jest... Skąd się wzięła, gdzie jej szukać? Poniższy kod wyświetla 3 TextBoxy, z czego dwa wyświetlają "Test 1" i "Test 2", a trzeci jest pusty...
<Style x:Key="ColumnHeaderContainerStyle" TargetType="GridViewColumnHeader">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="GridViewColumnHeader">
<StackPanel>
<TextBox x:Name="ContentHeaderTextBlock" Text="{TemplateBinding Content}" Padding="5,5,5,0" Width="{TemplateBinding Width}" TextAlignment="Center" />
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<ListView Grid.Row="1" x:Name="MyItemsList"
Style="{StaticResource MyItemsListView}"
HorizontalAlignment="Stretch"
ItemsSource="{Binding MyItems}">
<ListView.View>
<GridView ColumnHeaderContainerStyle="{StaticResource ColumnHeaderContainerStyle}">
<GridViewColumn Header="Test 1" Width="200" DisplayMemberBinding="{Binding Something}" />
<GridViewColumn Header="Test 2" Width="Auto" DisplayMemberBinding="{Binding SomethingElse}" />
</GridView>
</ListView.View>
</ListView>