• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ASP.NET 2.0(C#) GridViewのソート機能をデフォルトで降順にしたい)

ASP.NET 2.0(C#) GridViewのソート機能をデフォルトで降順にしたい

このQ&Aのポイント
  • ASP.NET 2.0(C#) GridViewのソート機能をデフォルトで降順にする方法を解説します
  • GridViewコントロールで特定のフィールドだけを降順にソートする方法について説明します
  • C#を使用してASP.NET 2.0のGridViewでデフォルトで降順にソートする方法を紹介します

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

たぶん DataGridViewのSortDirectionプロパティを参照して GridViewSortEventArgsを組み立てているのだろうと思います Sessionなどでそのソートを制御したい列のSortDirectionを保存しておかないといけないように思います GridViewのDataBoundイベントで初期状態を保存します   if ( Session["mySort"] == null )   {     Session["mySort"] = GridView1.SortDirection;   } Sortingイベントで   // 判定用の変数に現在の状態を取り込む   SortDirection mySort = (SortDirection)Session["mySort"];   if ( e.SortExpression == "hoge" )   {     if ( mySort == SortDirection.Ascending )     {       mySort = SortDirection.Descending;     }     else     {       mySort = SortDirection.Ascending;     }     e.SortDirection = mySort;     // 次回用にセッションに保存     Session["mySort"] = mySort;   } といった具合でどうでしょう # 字下げは全角スペースです

noname#44908
質問者

お礼

redfox63さん、回答ありがとうございます。 初期状態をどうやって取得するか苦労していたのですが、 DataGridViewのSortDirectionプロパティを保持しておけば良かったんですね。 おかげさまで出来ました。 ありがとうございました。またよろしくお願いします。

関連するQ&A