SortExpressionの用法に関する質問
SortExpressionは、フィールドとソート順序を指定して、データを照会またはフィルタリングする際に使用できる、ソート規約を定義するためのclassです。
SortExpression には、FieldName と SortDirection の 2 つのプロパティがあります。
- フィールド名属性は、ソートするフィールドの名前を指定するために使用されます。
- SortDirection 属性は、昇順または降順のいずれかの並べ替え順序を指定するために使用されます。
必要なSortExpressionはAddメソッドを呼び出すことによってGridView控件のSortExpressionsコレクションに追加されます。GridView控件のSortingイベントでは、SortExpressionsコレクションにあるSortExpressionを使用してデータをソートできます。
次の例では、SortExpressionを使用したGridView内のデータのソート方法を示します。
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
// 清除已有的排序规则
GridView1.SortExpression = string.Empty;
// 创建新的排序规则
SortExpression sortExpression = new SortExpression();
sortExpression.FieldName = e.SortExpression;
sortExpression.SortDirection = e.SortDirection;
// 将排序规则添加到SortExpressions集合中
GridView1.SortExpressions.Add(sortExpression);
// 重新绑定数据
BindGridView();
}
GridViewコントロールがソート処理を実行する場合、最初に一旦既存のソート条件を破棄し、次にイベント引数eのSortExpressionおよびSortDirectionに基づき新しいSortExpressionオブジェクトを作成し、最後にGridViewのSortExpressionsコレクションに追加します。ソート条件の設定が完了したら、BindGridViewメソッドを呼び出してデータを再バインドし、新しいソート条件を適用します。
注意:SortExpression のみ、GridView やListView などのデータソースにバインドされているコントロールに使用できます。他のタイプの集合やデータソースでは、ソートロジックを独自に記述する必要があります。