Condividi tramite


Procedura: ordinare i dati in una visualizzazione

In questo esempio viene descritto come ordinare i dati in una visualizzazione.

Esempio

Nell'esempio riportato di seguito viene creato un oggetto ListBox semplice e Button:

<Window x:Class="ListBoxSort_snip.Window1"
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
    Title="ListBoxSort_snip" Height="300" Width="300">
    <DockPanel>
      <ListBox Name="myListBox" DockPanel.Dock="Top">
        <ListBoxItem>my</ListBoxItem>
        <!--Or you can set the content this way:-->
        <!--<ListBoxItem Content="my"/>-->
        <ListBoxItem>1</ListBoxItem>
        <ListBoxItem>Sort</ListBoxItem>
        <ListBoxItem>3</ListBoxItem>
        <ListBoxItem>ListBox</ListBoxItem>
        <ListBoxItem>2</ListBoxItem>
      </ListBox>
      <Button Click="OnClick" Width="30" Height="20" DockPanel.Dock="Top">Sort</Button>
    </DockPanel>
</Window>

Il gestore eventi Click del pulsante contiene la logica per ordinare gli elementi in ListBox in ordine discendente. Questa operazione è possibile in quanto aggiungendo elementi a ListBox, in questo modo vengono aggiunti a ItemCollection dell'oggetto ListBox e ItemCollection deriva dalla classe CollectionView. Se ListBox deve essere associato a un insieme mediante la proprietà ItemsSource, si può utilizzare la stessa tecnica di ordinamento.

        Private Sub OnClick(ByVal sender As Object, ByVal e As RoutedEventArgs)
            myListBox.Items.SortDescriptions.Add(New SortDescription("Content", ListSortDirection.Descending))
        End Sub
private void OnClick(object sender, RoutedEventArgs e)
{
    myListBox.Items.SortDescriptions.Add(
        new SortDescription("Content", ListSortDirection.Descending));
}

Finché si possiede un riferimento all'oggetto di visualizzazione è possibile utilizzare la stessa tecnica di ordinamento del contenuto di altre visualizzazioni di insiemi. Per un esempio della procedura da seguire per ottenere una visualizzazione, vedere Procedura: ottenere la visualizzazione predefinita di una raccolta dati. Per un altro esempio, vedere Procedura: ordinare una colonna GridView quando si fa clic su un'intestazione. Per ulteriori informazioni sulle visualizzazioni, vedere la sezione relativa all'associazione agli insiemi in Cenni preliminari sull'associazione dati.

Per un esempio su come applicare la logica di ordinamento in Extensible Application Markup Language (XAML), vedere Procedura: ordinare e raggruppare i dati tramite una visualizzazione di XAML.

Vedere anche

Attività

Procedura: ordinare una colonna GridView quando si fa clic su un'intestazione

Procedura: filtrare i dati in una visualizzazione

Riferimenti

CustomSort

Concetti

Cenni preliminari sull'associazione dati

Altre risorse

Procedure relative all'associazione dati