DataGridViewSortCompareEventArgs.SortResult 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指示被比较单元格将遵循的排序顺序。
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
属性值
如果第一个单元格将排在第二个单元格之前,则小于零;如果第一个单元格和第二个单元格的值相等,则等于零;如果第二个单元格将排在第一个单元格之前,则大于零。
示例
下面的代码示例演示如何 SortResult 在多列排序中使用 。 此示例是 How to: Customize Sorting in the 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)的返回值。