方法: ビュー内のデータの並べ替えHow to: Sort Data in a View

この例では、ビュー内のデータを並べ替える方法について説明します。This example describes how to sort data in a view.

Example

次の例では、単純なListBoxButton:The following example creates a simple ListBox and a Button:

<Window x:Class="ListBoxSort_snip.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://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>

Clickボタンのイベント ハンドラーには内の項目の並べ替えにロジックが含まれています、ListBox降順にします。The Click event handler of the button contains logic to sort the items in the ListBox in the descending order. これを行うために項目を追加、ListBoxこの方法を追加すること、ItemCollectionListBox、およびItemCollectionから派生した、CollectionViewクラス。You can do this because adding items to a ListBox this way adds them to the ItemCollection of the ListBox, and ItemCollection derives from the CollectionView class. バインドしている場合、ListBoxを使用してコレクションに、ItemsSourceプロパティの並べ替えには同じ手法を使用することができます。If you are binding your ListBox to a collection using the ItemsSource property, you can use the same technique to sort.

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

ビューのオブジェクトへの参照がある限り、他のコレクション ビューのコンテンツを並べ替えるには同じ手法を使用できます。As long as you have a reference to the view object, you can use the same technique to sort the content of other collection views. ビューを取得する方法の例は、次を参照してください。データ コレクションの既定のビューを取得します。For an example of how to obtain a view, see Get the Default View of a Data Collection. 別の例では、次を参照してください。を GridView の列のヘッダーがクリックされたときの並べ替えします。For another example, see Sort a GridView Column When a Header Is Clicked. ビューの詳細については、コレクションへのバインドを参照してください。データ バインディングの概要します。For more information about views, see Binding to Collections in Data Binding Overview.

並べ替えのロジックを適用する方法の例についてはExtensible Application Markup Language (XAML)Extensible Application Markup Language (XAML)を参照してください並べ替えとグループを使用して XAML でビューをデータします。For an example of how to apply sorting logic in Extensible Application Markup Language (XAML)Extensible Application Markup Language (XAML), see Sort and Group Data Using a View in XAML.

関連項目See also