バージョン

並べ替えについて

FieldSettings オブジェクトの LabelClickAction プロパティを LabelClickAction 列挙値に設定すると、並べ替えを有効にすることができます。Field オブジェクトの LabelClickActionResolved プロパティが以下のいずれかの値に解決される場合に、エンド ユーザーはヘッダーをクリックすることによってフィールドを並べ替えることができます。

SortByOneFieldOnly - エンドユーザーはヘッダーをクリックすることによってひとつのフィールドを並べ替えることができます。ただし、複数のフィールドずつ並べ替えることはできなくなります。エンドユーザーがひとつのフィールドを並べ替えた後で、ヘッダーをクリックして並べ替えの昇順と降順を切り替えることができます。

  • SortByMultipleFields - エンドユーザーは CTRL キーを押し下げていくつかのフィールド ヘッダーをクリックして複数のフィールドずつ並べ替えることができます。SortByOneFieldOnly 列挙値とまったく同じように、エンドユーザーは並べ替えの昇順と降順を切り替えることができます。

  • SortByOneFieldOnlyTriState - エンドユーザーはヘッダーをクリックすることによってひとつのフィールドを並べ替えることができます。エンドユーザーがフィールドを並べ替えた後で、ヘッダーをクリックして並べ替えない、昇順の並べ替えおよび降順の並べ替えの順に切り替えることができます。

  • SortByMultipleFieldsTriState - エンドユーザーは CTRL キーを押し下げていくつかのフィールド ヘッダーをクリックして複数のフィールドで並べ替えることができます。SortByMultipleFieldsTriState 列挙値とまったく同じように、エンドユーザーは並べ替えない、昇順の並べ替えおよび降順の並べ替えの順に切り替えることができます。

LabelClickAction プロパティを Nothing または SelectField に設定することによって並べ替えを無効にするとしても、プログラムを使用してフィールドを並べ替えることが可能です。これに加えて、FieldSettings オブジェクトによって公開される以下のプロパティを設定することによって並べ替え関連の動作をさらに修正できます:

SortComparer - .NET Framework にある IComparer インターフェイスを実装するオブジェクトにこのプロパティを設定することによって、独自のソート ロジックを提供できます。

SortComparisonType - このプロパティを FieldSortComparisonType 列挙値に設定して、デフォルトのソート ロジックが大文字と小文字を区別するかどうかを決定できます。

最後に、Field オブジェクトと LabelPresenter オブジェクトは共にフィールドの現在の並べ替えの状態を決定するために使用できる読み取り専用の SortStatus プロパティを公開します。コードでフィールドの並べ替え順序を決定する必要がある場合には、Field オブジェクトの SortStatus プロパティを使用します。ただし、LabelPresenter オブジェクトのスタイルまたはテンプレートを作成している場合には、トリガーで SortStatus プロパティを使用して並べ替えインジケーターを表示または非表示にすることができます。