DataGridViewSortCompareEventArgs クラス
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)


SortCompare イベントを処理すると、カスタムの並べ替えを実行できます。このイベントは、DataGridView.DataSource プロパティが設定されておらず、DataGridView.VirtualMode プロパティが false に設定されている場合のみ発生します。このイベントは、並べ替え対象の列に含まれるセルのペアごとに 1 回発生します。このイベントが発生するのは、DataGridViewColumn.SortMode プロパティの値が Automatic に設定されている列ヘッダーをユーザーがクリックしたときと、DataGridView.Sort(DataGridViewColumn,ListSortDirection) のオーバーロードが呼び出されたときのみです。DataGridViewColumn.SortMode プロパティの値が Programmatic に設定されている列にこのイベントを発生させるときは、DataGridViewColumnHeaderCell.SortGlyphDirection プロパティを使用して並べ替えグリフを表示する必要があります。
このイベントを使用すると、1 つまたは複数の列のセル値を使用して、行を並べ替えることができます。CellValue1 プロパティと CellValue2 プロパティを使用すると、Column プロパティで指定した列に含まれるセル値を比較できます。RowIndex1 プロパティと RowIndex2 プロパティを使用すると、DataGridView.Rows コレクションを通じて他の列の値を調べることができます。

次のコード例では、複数列の並べ替えで SortCompare を使用する方法を示します。この例は 方法 : Windows フォーム DataGridView コントロールの並べ替え機能をカスタマイズする の例の一部です。
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
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; }

System.EventArgs
System.ComponentModel.HandledEventArgs
System.Windows.Forms.DataGridViewSortCompareEventArgs


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DataGridViewSortCompareEventArgs メンバ
System.Windows.Forms 名前空間
DataGridView クラス
DataGridView.SortCompare イベント
DataGridView.OnSortCompare
DataGridView.Rows プロパティ
DataGridViewSortCompareEventHandler
DataGridViewColumn.SortMode プロパティ
DataGridViewColumnHeaderCell.SortGlyphDirection プロパティ
CellValue1
CellValue2
Column
RowIndex1
RowIndex2
その他の技術情報
方法 : Windows フォーム DataGridView コントロールの並べ替え機能をカスタマイズする
DataGridViewSortCompareEventArgs コンストラクタ
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

Public Sub New ( _ dataGridViewColumn As DataGridViewColumn, _ cellValue1 As Object, _ cellValue2 As Object, _ rowIndex1 As Integer, _ rowIndex2 As Integer _ )
Dim dataGridViewColumn As DataGridViewColumn Dim cellValue1 As Object Dim cellValue2 As Object Dim rowIndex1 As Integer Dim rowIndex2 As Integer Dim instance As New DataGridViewSortCompareEventArgs(dataGridViewColumn, cellValue1, cellValue2, rowIndex1, rowIndex2)
public DataGridViewSortCompareEventArgs ( DataGridViewColumn dataGridViewColumn, Object cellValue1, Object cellValue2, int rowIndex1, int rowIndex2 )
public: DataGridViewSortCompareEventArgs ( DataGridViewColumn^ dataGridViewColumn, Object^ cellValue1, Object^ cellValue2, int rowIndex1, int rowIndex2 )
public DataGridViewSortCompareEventArgs ( DataGridViewColumn dataGridViewColumn, Object cellValue1, Object cellValue2, int rowIndex1, int rowIndex2 )
public function DataGridViewSortCompareEventArgs ( dataGridViewColumn : DataGridViewColumn, cellValue1 : Object, cellValue2 : Object, rowIndex1 : int, rowIndex2 : int )
- dataGridViewColumn
並べ替える列。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DataGridViewSortCompareEventArgs プロパティ

名前 | 説明 | |
---|---|---|
![]() | CellValue1 | 比較する最初のセルの値を取得します。 |
![]() | CellValue2 | 比較する 2 番目のセルの値を取得します。 |
![]() | Column | 並べ替える列を取得します。 |
![]() | Handled | イベント ハンドラがイベントを完全に処理したかどうか、またはシステムが独自の処理を継続する必要があるかどうかを示す値を取得または設定します。 ( HandledEventArgs から継承されます。) |
![]() | RowIndex1 | 比較する最初のセルを含む行のインデックスを取得します。 |
![]() | RowIndex2 | 比較する 2 番目のセルを含む行のインデックスを取得します。 |
![]() | SortResult | 比較されたセルを並べ替える順序を示す値を取得または設定します。 |

関連項目
DataGridViewSortCompareEventArgs クラスSystem.Windows.Forms 名前空間
DataGridView クラス
DataGridView.SortCompare イベント
DataGridView.OnSortCompare
DataGridView.Rows プロパティ
DataGridViewSortCompareEventHandler
DataGridViewColumn.SortMode プロパティ
DataGridViewColumnHeaderCell.SortGlyphDirection プロパティ
CellValue1
CellValue2
Column
RowIndex1
RowIndex2
その他の技術情報
方法 : Windows フォーム DataGridView コントロールの並べ替え機能をカスタマイズするDataGridViewSortCompareEventArgs メソッド

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

関連項目
DataGridViewSortCompareEventArgs クラスSystem.Windows.Forms 名前空間
DataGridView クラス
DataGridView.SortCompare イベント
DataGridView.OnSortCompare
DataGridView.Rows プロパティ
DataGridViewSortCompareEventHandler
DataGridViewColumn.SortMode プロパティ
DataGridViewColumnHeaderCell.SortGlyphDirection プロパティ
CellValue1
CellValue2
Column
RowIndex1
RowIndex2
その他の技術情報
方法 : Windows フォーム DataGridView コントロールの並べ替え機能をカスタマイズするDataGridViewSortCompareEventArgs メンバ
DataGridViewSortCompareEventArgs データ型で公開されるメンバを以下の表に示します。


名前 | 説明 | |
---|---|---|
![]() | CellValue1 | 比較する最初のセルの値を取得します。 |
![]() | CellValue2 | 比較する 2 番目のセルの値を取得します。 |
![]() | Column | 並べ替える列を取得します。 |
![]() | Handled | イベント ハンドラがイベントを完全に処理したかどうか、またはシステムが独自の処理を継続する必要があるかどうかを示す値を取得または設定します。(HandledEventArgs から継承されます。) |
![]() | RowIndex1 | 比較する最初のセルを含む行のインデックスを取得します。 |
![]() | RowIndex2 | 比較する 2 番目のセルを含む行のインデックスを取得します。 |
![]() | SortResult | 比較されたセルを並べ替える順序を示す値を取得または設定します。 |

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

関連項目
DataGridViewSortCompareEventArgs クラスSystem.Windows.Forms 名前空間
DataGridView クラス
DataGridView.SortCompare イベント
DataGridView.OnSortCompare
DataGridView.Rows プロパティ
DataGridViewSortCompareEventHandler
DataGridViewColumn.SortMode プロパティ
DataGridViewColumnHeaderCell.SortGlyphDirection プロパティ
CellValue1
CellValue2
Column
RowIndex1
RowIndex2
その他の技術情報
方法 : Windows フォーム DataGridView コントロールの並べ替え機能をカスタマイズする- DataGridViewSortCompareEventArgsのページへのリンク