DataGridViewSortCompareEventArgs.SortResult DataGridViewSortCompareEventArgs.SortResult DataGridViewSortCompareEventArgs.SortResult DataGridViewSortCompareEventArgs.SortResult Property

定义

获取或设置一个值,该值指示被比较单元格将遵循的排序顺序。Gets or sets a value indicating the order in which the compared cells will be sorted.

public:
 property int SortResult { int get(); void set(int value); };
public int SortResult { get; set; }
member this.SortResult : int with get, set
Public Property SortResult As Integer

属性值

如果第一个单元格将排在第二个单元格之前,则小于零;如果第一个单元格和第二个单元格的值相等,则等于零;如果第二个单元格将排在第一个单元格之前,则大于零。Less than zero if the first cell will be sorted before the second cell; zero if the first cell and second cell have equivalent values; greater than zero if the second cell will be sorted before the first cell.

示例

下面的代码示例演示如何将SortResult中多个列进行排序。The following code example demonstrates the use of SortResult in a multiple column sort. 此示例摘自如何: 自定义 Windows 窗体 DataGridView 控件中的排序This example is part of a larger example provided in How to: Customize Sorting in the Windows Forms DataGridView Control.

private void dataGridView1_SortCompare(object sender,
    DataGridViewSortCompareEventArgs e)
{
    // Try to sort based on the cells in the current column.
    e.SortResult = System.String.Compare(
        e.CellValue1.ToString(), e.CellValue2.ToString());

    // If the cells are equal, sort based on the ID column.
    if (e.SortResult == 0 && e.Column.Name != "ID")
    {
        e.SortResult = System.String.Compare(
            dataGridView1.Rows[e.RowIndex1].Cells["ID"].Value.ToString(),
            dataGridView1.Rows[e.RowIndex2].Cells["ID"].Value.ToString());
    }
    e.Handled = true;
}
Private Sub DataGridView1_SortCompare( _
    ByVal sender As Object, ByVal e As DataGridViewSortCompareEventArgs) _
    Handles DataGridView1.SortCompare

    ' Try to sort based on the contents of the cell in the current column.
    e.SortResult = System.String.Compare(e.CellValue1.ToString(), _
        e.CellValue2.ToString())

    ' If the cells are equal, sort based on the ID column.
    If (e.SortResult = 0) AndAlso Not (e.Column.Name = "ID") Then
        e.SortResult = System.String.Compare( _
            DataGridView1.Rows(e.RowIndex1).Cells("ID").Value.ToString(), _
            DataGridView1.Rows(e.RowIndex2).Cells("ID").Value.ToString())
    End If

    e.Handled = True

End Sub

注解

设置此值通常是将执行的处理程序中的上一个操作DataGridView.SortCompare事件。Setting this value is typically the last operation you will perform in a handler for the DataGridView.SortCompare event. 通常将此值的比较方法的返回值如String.CompareYou will typically set this value to the return value of a comparison method such as String.Compare.

适用于

另请参阅