BindingSource.Sort BindingSource.Sort BindingSource.Sort BindingSource.Sort Property

定義

並べ替えに使用する列名と、データ ソースで行を表示するときの並べ替え順序を取得または設定します。Gets or sets the column names used for sorting, and the sort order for viewing the rows in the data source.

public:
 property System::String ^ Sort { System::String ^ get(); void set(System::String ^ value); };
public string Sort { get; set; }
member this.Sort : string with get, set
Public Property Sort As String

プロパティ値

列名の後に "ASC" (昇順) または "DESC" (降順) を付けた、大文字と小文字が区別される文字列。A case-sensitive string containing the column name followed by "ASC" (for ascending) or "DESC" (for descending). 既定値は、null です。The default is null.

次の例は、 Sortプロパティを使用して、 DataViewで基本的な並べ替えを実行する方法を示しています。The following example shows how to use the Sort property to perform basic sorting with a DataView. この例を実行するには、Windows フォームにコードを貼りPopulateDataViewAndSort付け、フォームのコンストラクターまたLoadはイベント処理メソッドからを呼び出します。To run this example, paste the code into a Windows Form and call PopulateDataViewAndSort from the form's constructor or Load event-handling method. フォームで名前空間System.XmlSystem.IO名前空間をインポートする必要があります。Your form should import the System.Xml and System.IO namespaces.

private void PopulateDataViewAndSort()
{
    DataSet set1 = new DataSet();

    // Some xml data to populate the DataSet with.
    string musicXml =
        "<?xml version='1.0' encoding='UTF-8'?>" +
        "<music>" +
        "<recording><artist>Coldplay</artist><cd>X&amp;Y</cd></recording>" +
        "<recording><artist>Dave Matthews</artist><cd>Under the Table and Dreaming</cd></recording>" +
        "<recording><artist>Dave Matthews</artist><cd>Live at Red Rocks</cd></recording>" +
        "<recording><artist>Natalie Merchant</artist><cd>Tigerlily</cd></recording>" +
        "<recording><artist>U2</artist><cd>How to Dismantle an Atomic Bomb</cd></recording>" +
        "</music>";

    // Read the xml.
    StringReader reader = new StringReader(musicXml);
    set1.ReadXml(reader);

    // Get a DataView of the table contained in the dataset.
    DataTableCollection tables = set1.Tables;
    DataView view1 = new DataView(tables[0]);

    // Create a DataGridView control and add it to the form.
    DataGridView datagridview1 = new DataGridView();
    datagridview1.AutoGenerateColumns = true;
    this.Controls.Add(datagridview1);

    // Create a BindingSource and set its DataSource property to
    // the DataView.
    BindingSource source1 = new BindingSource();
    source1.DataSource = view1;

    // Set the data source for the DataGridView.
    datagridview1.DataSource = source1;

    source1.Sort = "cd";
}
Private Sub PopulateDataViewAndSort() 
    Dim set1 As New DataSet()
    
    ' Some xml data to populate the DataSet with.
    Dim musicXml As String = "<?xml version='1.0' encoding='UTF-8'?>" & _
        "<music>" & _
        "<recording><artist>Coldplay</artist><cd>X&amp;Y</cd></recording>" & _
        "<recording><artist>Dave Matthews</artist><cd>Under the Table and Dreaming</cd></recording>" & _
        "<recording><artist>Dave Matthews</artist><cd>Live at Red Rocks</cd></recording>" & _
        "<recording><artist>Natalie Merchant</artist><cd>Tigerlily</cd></recording>" & _
        "<recording><artist>U2</artist><cd>How to Dismantle an Atomic Bomb</cd></recording>" & _
         "</music>"
    
    ' Read the xml.
    Dim reader As New StringReader(musicXml)
    set1.ReadXml(reader)
    
    ' Get a DataView of the table contained in the dataset.
    Dim tables As DataTableCollection = set1.Tables
    Dim view1 As New DataView(tables(0))
    
    ' Create a DataGridView control and add it to the form.
    Dim datagridview1 As New DataGridView()
    datagridview1.AutoGenerateColumns = True
    Me.Controls.Add(datagridview1)
    
    ' Create a BindingSource and set its DataSource property to
    ' the DataView.
    Dim source1 As New BindingSource()
    source1.DataSource = view1
    
    ' Set the data source for the DataGridView.
    datagridview1.DataSource = source1
    
    source1.Sort = "cd"

End Sub

次の例は、 Sortプロパティを使用して、 DataViewで高度な並べ替えを実行する方法を示しています。The following example shows how to use the Sort property to perform advanced sorting with a DataView. この例を実行するには、Windows フォームにコードを貼りPopulateDataViewAndAdvancedSort付け、フォームのコンストラクターまたLoadはイベント処理メソッドからを呼び出します。To run this example, paste the code into a Windows Form and call PopulateDataViewAndAdvancedSort from the form's constructor or Load event-handling method. フォームで名前空間System.XmlSystem.IO名前空間をインポートする必要があります。Your form should import the System.Xml and System.IO namespaces.

private void PopulateDataViewAndAdvancedSort()
{
    DataSet set1 = new DataSet();

    // Some xml data to populate the DataSet with.
    string musicXml =
        "<?xml version='1.0' encoding='UTF-8'?>" +
        "<music>" +
        "<recording><artist>Dave Matthews</artist><cd>Under the Table and Dreaming</cd></recording>" +
        "<recording><artist>Coldplay</artist><cd>X&amp;Y</cd></recording>" +
        "<recording><artist>Dave Matthews</artist><cd>Live at Red Rocks</cd></recording>" +
        "<recording><artist>U2</artist><cd>Joshua Tree</cd></recording>" +
        "<recording><artist>U2</artist><cd>How to Dismantle an Atomic Bomb</cd></recording>" +
        "<recording><artist>Natalie Merchant</artist><cd>Tigerlily</cd></recording>" +
        "</music>";

    // Read the xml.
    StringReader reader = new StringReader(musicXml);
    set1.ReadXml(reader);

    // Get a DataView of the table contained in the dataset.
    DataTableCollection tables = set1.Tables;
    DataView view1 = new DataView(tables[0]);

    // Create a DataGridView control and add it to the form.
    DataGridView datagridview1 = new DataGridView();
    datagridview1.AutoGenerateColumns = true;
    this.Controls.Add(datagridview1);

    // Create a BindingSource and set its DataSource property to
    // the DataView.
    BindingSource source1 = new BindingSource();
    source1.DataSource = view1;

    // Set the data source for the DataGridView.
    datagridview1.DataSource = source1;

    source1.Sort = "artist ASC, cd ASC";
}
Private Sub PopulateDataViewAndAdvancedSort() 
    Dim set1 As New DataSet()
    
    ' Some xml data to populate the DataSet with.
    Dim musicXml As String = "<?xml version='1.0' encoding='UTF-8'?>" & _
        "<music>" & _
        "<recording><artist>Dave Matthews</artist><cd>Under the Table and Dreaming</cd></recording>" & _
        "<recording><artist>Coldplay</artist><cd>X&amp;Y</cd></recording>" & _
        "<recording><artist>Dave Matthews</artist><cd>Live at Red Rocks</cd></recording>" & _
        "<recording><artist>U2</artist><cd>Joshua Tree</cd></recording>" & _
        "<recording><artist>U2</artist><cd>How to Dismantle an Atomic Bomb</cd></recording>" & _
        "<recording><artist>Natalie Merchant</artist><cd>Tigerlily</cd></recording>" & _
        "</music>"
    
    ' Read the xml.
    Dim reader As New StringReader(musicXml)
    set1.ReadXml(reader)
    
    ' Get a DataView of the table contained in the dataset.
    Dim tables As DataTableCollection = set1.Tables
    Dim view1 As New DataView(tables(0))
    
    ' Create a DataGridView control and add it to the form.
    Dim datagridview1 As New DataGridView()
    datagridview1.AutoGenerateColumns = True
    Me.Controls.Add(datagridview1)
    
    ' Create a BindingSource and set its DataSource property to
    ' the DataView.
    Dim source1 As New BindingSource()
    source1.DataSource = view1
    
    ' Set the data source for the DataGridView.
    datagridview1.DataSource = source1
    
    source1.Sort = "artist ASC, cd ASC"

注釈

Sortプロパティは、並べ替えの方向と共に、行の並べ替えに使用する列名を指定する、大文字と小文字を区別する文字列です。The Sort property is a case-sensitive string that specifies the column names used to sort the rows, along with the sort direction. 既定では列は昇順で並べ替えられます。Columns are sorted ascending by default. "State, ZipCode DESC"のように、複数の列をコンマで区切ることができます。Multiple columns can be separated by commas, such as "State, ZipCode DESC".

並べ替えをサポートするにIBindingListは、基になるリストがインターフェイスまたはIBindingListViewインターフェイスを実装している必要があります。To support sorting, the underlying list must implement the IBindingList or IBindingListView interfaces. この機能は、プロパティをSupportsSorting使用して照会できます。This capability can be queried through the SupportsSorting property. 複数列の並べ替えは、 SupportsAdvancedSortingプロパティがtrueの場合に使用できます。Multicolumn sorting is available when the SupportsAdvancedSorting property is true.

プロパティをSort設定すると、その型に応じて内部リストが変更されます。Setting the Sort property will change the internal list depending on its type:

内部リストの並べ替えプロパティは、並べ替え文字列がでないnull場合にのみ変更されます。The internal list's sort properties are only changed when the sort string is not null. このプロパティのset アクセサーは、内部リストの並べ替え値を取得しません。代わりに、アクセサー値がget返されます。The get accessor for this property will not retrieve the sort value of the internal list; instead, it will return the set accessor value. Sortプロパティの値は、データソースの変更時に保持されます。The value of the Sort property will persist when the data source changes.

適用対象

こちらもご覧ください