In un WPF ho un DataGrid con poche colonne.Datagrid in WPF - 1 colonna predefinita ordinata
In base alle impostazioni predefinite, c'è 1 a cui desidero eseguire l'ordinamento, ma non riesco a trovare il modo in cui posso farlo.
Il DataGrid in XAML si presenta così:
<DataGrid x:Name="LibraryView" ItemsSource="{Binding Path=Elements[Persons]}" IsReadOnly="True" LoadingRow="dg_LoadingRow">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Binding="{Binding Path=Element[Name].Value}" IsReadOnly="True" />
<DataGridTextColumn Header="Score" Binding="{Binding Path=Element[Score].Value}" IsReadOnly="True" />
<DataGridTextColumn Header="Date" Binding="{Binding Path=Element[Date].Value}" IsReadOnly="True" />
</DataGrid.Columns>
</DataGrid>
E l'unico codice che sta dietro è:
public ScoreBoard()
{
InitializeComponent();
DataSet ds = dweMethods.DecryptAndDeserialize("ScoreData.xml");
XElement TrackList = XElement.Parse(ds.GetXml());
LibraryView.DataContext = TrackList;
}
Quello che non riesco proprio a trovare è come renderlo di default ordinato in base la colonna "Punteggio".
Qualcuno può aiutarmi a indicarmi la giusta direzione?
un'occhiata a CollectionViewSource. –
Ho già provato questo: 'ICollectionView view = CollectionViewSource.GetDefaultView (dataGrid1.ItemsSource); view.SortDescriptions.Clear(); view.SortDescriptions.Add (new SortDescription ("LastName", ListSortDirection.Acending)); view.Refresh(); 'Ma questo non sembra funzionare con il mio codice precedente, non so e non capisco cosa dovrei fare per farlo funzionare – Dante1986
hai considerato di ordinare i tuoi figli TrackList? –