BindingSource.Sort Eigenschaft

Definition

Ruft die zum Sortieren verwendeten Spaltennamen und die Sortierreihenfolge für die Anzeige der Zeilen in der Datenquelle ab oder legt diese fest.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

Eigenschaftswert

Eine Zeichenfolge mit Berücksichtigung der Groß- und Kleinschreibung, die den Spaltennamen enthält, und auf die "ASC" (für aufsteigend) oder "DESC" (für absteigend) folgt.A case-sensitive string containing the column name followed by "ASC" (for ascending) or "DESC" (for descending). Der Standardwert ist null.The default is null.

Beispiele

Im folgenden Beispiel wird gezeigt, wie die Sort-Eigenschaft verwendet wird, um eine einfache Sortierung mit einem DataViewauszuführen.The following example shows how to use the Sort property to perform basic sorting with a DataView. Fügen Sie zum Ausführen dieses Beispiels den Code in ein Windows Form ein, und nennen Sie PopulateDataViewAndSort aus dem Konstruktor des Formulars oder Load Ereignis Behandlungsmethode.To run this example, paste the code into a Windows Form and call PopulateDataViewAndSort from the form's constructor or Load event-handling method. Das Formular sollte die System.Xml-und System.IO-Namespaces importieren.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

Im folgenden Beispiel wird gezeigt, wie die Sort-Eigenschaft verwendet wird, um eine erweiterte Sortierung mit einem DataViewauszuführen.The following example shows how to use the Sort property to perform advanced sorting with a DataView. Fügen Sie zum Ausführen dieses Beispiels den Code in ein Windows Form ein, und nennen Sie PopulateDataViewAndAdvancedSort aus dem Konstruktor des Formulars oder Load Ereignis Behandlungsmethode.To run this example, paste the code into a Windows Form and call PopulateDataViewAndAdvancedSort from the form's constructor or Load event-handling method. Das Formular sollte die System.Xml-und System.IO-Namespaces importieren.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"

Hinweise

Die Sort-Eigenschaft ist eine Zeichenfolge mit Beachtung der Groß-/Kleinschreibung, die die Spaltennamen angibt, die zum Sortieren der Zeilen verwendet werden, sowie die SortierrichtungThe Sort property is a case-sensitive string that specifies the column names used to sort the rows, along with the sort direction. Spalten werden standardmäßig in aufsteigender Reihenfolge sortiert.Columns are sorted ascending by default. Mehrere Spalten können durch Kommas getrennt werden, z. b. "State, ZipCode DESC".Multiple columns can be separated by commas, such as "State, ZipCode DESC".

Um die Sortierung zu unterstützen, muss die zugrunde liegende Liste die IBindingList oder IBindingListView Schnittstellen implementieren.To support sorting, the underlying list must implement the IBindingList or IBindingListView interfaces. Diese Funktion kann durch die SupportsSorting-Eigenschaft abgefragt werden.This capability can be queried through the SupportsSorting property. Das Sortieren mehrerer Spalten ist verfügbar, wenn die SupportsAdvancedSorting-Eigenschaft trueist.Multicolumn sorting is available when the SupportsAdvancedSorting property is true.

Wenn Sie die Sort-Eigenschaft festlegen, ändert sich die interne Liste abhängig vom Typ:Setting the Sort property will change the internal list depending on its type:

Die Sortier Eigenschaften der internen Liste werden nur geändert, wenn die Sortier Zeichenfolge nicht nullist.The internal list's sort properties are only changed when the sort string is not null. Der get-Accessor für diese Eigenschaft ruft nicht den Sortier Wert der internen Liste ab. Stattdessen wird der set Accessor-Wert zurückgegeben.The get accessor for this property will not retrieve the sort value of the internal list; instead, it will return the set accessor value. Der Wert der Sort-Eigenschaft bleibt bestehen, wenn sich die Datenquelle ändert.The value of the Sort property will persist when the data source changes.

Gilt für:

Siehe auch