Jak mogę:
- wyrównaj tekst w kolumnie ID do prawej
- ustawić rozmiar każdej kolumny zgodnie z długością tekstu komórki z najdłuższymi widocznymi danymi?
Oto kod:
<ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}">
<ListView.View>
<GridView>
<GridViewColumn Header="ID" DisplayMemberBinding="{Binding Id}" Width="40"/>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}" Width="100" />
<GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}"/>
</GridView>
</ListView.View>
</ListView>
odpowiedź częściowa:
Dzięki Kjetil, GridViewColumn.CellTemplate działa dobrze, a automatyczna szerokość działa oczywiście, ale kiedy „Kolekcja” ObservativeCollection jest aktualizowana danymi dłuższymi niż szerokość kolumny, rozmiary kolumn nie aktualizują się same, więc jest to tylko rozwiązanie dla początkowe wyświetlanie danych:
<ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}">
<ListView.View>
<GridView>
<GridViewColumn Header="ID" Width="Auto">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Id}" TextAlignment="Right" Width="40"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}" Width="Auto" />
<GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}" Width="Auto"/>
</GridView>
</ListView.View>
</ListView>