Wie kann ich:
- Richten Sie den Text in der ID-Spalte nach rechts aus
- jede der Spalten automatisch entsprechend der Textlänge der Zelle mit den längsten sichtbaren Daten verkleinern?
Hier ist der Code:
<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>
Teilantwort:
Dank Kjetil funktioniert die GridViewColumn.CellTemplate gut und die automatische Breite funktioniert natürlich. Wenn jedoch die ObservativeCollection "Collection" mit Daten aktualisiert wird, die länger als die Spaltenbreite sind, werden die Spaltengrößen nicht selbst aktualisiert, sodass dies nur eine Lösung für die ist Erstanzeige der Daten:
<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>