Як я можу:
- вирівняйте текст за стовпцем ідентифікатора по правому краю
- зробити кожен із стовпців автоматичним розміром відповідно до довжини тексту комірки з найдовшими видимими даними?
Ось код:
<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>
часткова відповідь:
Завдяки Kjetil, GridViewColumn.CellTemplate працює добре, і Auto Width працює, звичайно, але коли ObservativeCollection "Колекція" оновлюється даними довжиною більше, ніж ширина стовпця, розміри стовпців не оновлюються самі, що є лише рішенням для початкове відображення даних:
<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>