PowerTools MultiRow for Windows Forms 8.0J
SortCompare イベント
使用例 

GcMultiRowコントロールが並べ替え操作を実行するために2つのセル値を比較すると発生します。
構文
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、SortCompareEventArgs 型の引数を受け取りました。次の SortCompareEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
CellIndexSection内でのセルのインデックスを取得します。  
CellValue1比較する最初のセルの値を取得します。  
CellValue2比較する2番目のセルの値を取得します。  
Handled System.ComponentModel.HandledEventArgsから継承されます。
RowIndex1比較する最初のセルを含む行のインデックスを取得します。  
RowIndex2比較する2番目のセルを含む行のインデックスを取得します。  
SortResult並べ替え結果を取得または設定します。  
解説

このイベントは、DataSourceプロパティが未設定で、なおかつVirtualModeプロパティの値がfalseの場合にのみ発生します。

このイベントは、並べ替えられる2つの異なる行に含まれるセルのペアを比較します。このイベントが発生するのは、ColumnHeaderCellを使用して並べ替えを実行したとき、またはSort(int)オーバーロードメソッドが呼び出されたときのみです。ColumnHeaderCell.SortModeプロパティの値をSortMode.Programmaticに設定している場合は、このイベントが発生したとき、ColumnHeaderCell.SortGlyphDirectionプロパティを使用して並べ替えグリフを自分で表示する必要があります。

使用例
次のサンプルコードは、このイベントを処理することによって並べ替え比較ロジックをカスタマイズする方法を示します。このサンプルを実行するには、フォームにGcMultiRowコントロールを作成し、テンプレートを設定します。このテンプレートには、1つ以上のセルを含む行が必要です。
void gcMultiRow1_SortCompare(object sender, SortCompareEventArgs e)
{
    // Customize sort logic by using SortCompare event.
    // Sort by back color.

    Color color1 = gcMultiRow1[e.RowIndex1,e.CellIndex].InheritedStyle.BackColor;

    Color color2 = gcMultiRow1[e.RowIndex2, e.CellIndex].InheritedStyle.BackColor;

    e.SortResult =  color1.ToArgb().CompareTo(color2.ToArgb());

    e.Handled = true;
}
Private Sub gcMultiRow1_SortCompare(ByVal sender As Object, ByVal e As SortCompareEventArgs) Handles gcMultiRow1.SortCompare
    ' Customize sort logic by using SortCompare event.
    ' Sort by back color.

    Dim color1 As Color = gcMultiRow1(e.RowIndex1, e.CellIndex).InheritedStyle.BackColor

    Dim color2 As Color = gcMultiRow1(e.RowIndex2, e.CellIndex).InheritedStyle.BackColor

    e.SortResult = color1.ToArgb().CompareTo(color2.ToArgb())

    e.Handled = True
End Sub
参照

GcMultiRow クラス
GcMultiRow メンバ

 

 


© 2008-2015 GrapeCity inc. All rights reserved.