DataGridViewSortCompareEventArgs.SortResult プロパティ

定義

比較されたセルを並べ替える順序を示す値を取得または設定します。

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

プロパティ値

最初のセルを 2 番目のセルよりも前に配置する場合は 0 未満。最初のセルと 2 番目のセルの値が同じである場合は 0。2 番目のセルを最初のセルよりも前に配置する場合は 0 を超える値。

次のコード例は、複数列の並べ替えでの の SortResult 使用を示しています。 この例は、「方法: Windows フォーム DataGridView コントロールで並べ替えをカスタマイズする」で提供される大きな例の一部です。

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 操作です。 通常、この値は、 などの String.Compare比較メソッドの戻り値に設定します。

適用対象

こちらもご覧ください