トップ回答者
GridViewでソートすると「GridView 'GridView1' はハンドルされていないイベント Sorting を送出しました。」

質問
-
GridViewのAllowSortingをTrueにし
ヘッダーのリンクボタンをクリックすると
GridView 'GridView1' はハンドルされていないイベント Sorting を送出しました。
と出てしまいます。
これは何かほかに設定する必要があるのでしょうか?
リンクボタンにカーソルを合わせるとブラウザの下のステータバー?でしたでしょうか
とりあえず下のところに
javascript:__doPostBack('GridView1','Sort$hoge)
と出ているのでここら辺の設定を別にする必要でもあるのかと思い
検索してみましたがよき参考文献が見つかりませんでした。
解決方法をご存知の方ご回答いただけましたら幸いです。
回答
-
標準で用意されているソート機能を使用するには、SqlDataSourceなどを使用しなければなりません。確認してみて下さい。
(参考)
データ ソース コントロールによるデータの並べ替え
http://msdn.microsoft.com/ja-jp/library/sa88ktts.aspx
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/ -
いいえ、ご提示されたコードではSqlDataSourceが使われていません。以下にサンプルがありますので参考にしてみて下さい。
データ バインド Web パーツ コントロールの例
http://msdn.microsoft.com/ja-jp/library/ms227548(VS.80).aspx
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/- 回答としてマーク 極小テック 2010年7月17日 1:26
-
ObjectDataSourceを使ってカスタムページングを行なえば良いと思いますよ。
(参考)
ASP.NET 2.0とSQL Server 2005によるカスタムのページング処理
http://japan.internet.com/developer/20060620/25.htmlASP.NET 2.0 GridView サンプル - GridView データのページングおよび並べ替え
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnvs05/htm/ASP2.0/gridview/GridViewEx05.asp
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/- 回答としてマーク 極小テック 2010年7月17日 1:26
すべての返信
-
標準で用意されているソート機能を使用するには、SqlDataSourceなどを使用しなければなりません。確認してみて下さい。
(参考)
データ ソース コントロールによるデータの並べ替え
http://msdn.microsoft.com/ja-jp/library/sa88ktts.aspx
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/ -
お世話になっております。ずいぶんと時間がたってしまいました。申し訳ございません。
DataSet ds = new DataSet();
MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM hoge", new MySqlConnection("userid=root;password=hoge;database=hoge;Host=localhost"));
da.Fill(ds);GridView1.DataSource = ds;
GridView1.DataBind();このように取得設定しています。
これはSqlDataSourceにあたるのでしょうか?それともマイクロソフトのSQLServerでないとだめだと
いうことなのでしょうか?
-
いいえ、ご提示されたコードではSqlDataSourceが使われていません。以下にサンプルがありますので参考にしてみて下さい。
データ バインド Web パーツ コントロールの例
http://msdn.microsoft.com/ja-jp/library/ms227548(VS.80).aspx
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/- 回答としてマーク 極小テック 2010年7月17日 1:26
-
> 検索してみましたがよき参考文献が見つかりませんでした。
MSDN ライブラリは見ましたか? 質問する前にまずこれを見ることをお勧めし
ます。最初の質問にあった GridView と AllowSorting をキーワードに検索を
かければ、以下のページが見つかるはずで、これに必要な情報はすべて入って
います。GridView.AllowSorting プロパティ
http://msdn.microsoft.com/ja-jp/library/system.web.ui.webcontrols.gridview.allowsorting.aspx基本的なことですから、チュートリアルなどは探せば必ず見つかるものです。
探す努力をしましょう。 -
trapemiyaさん毎回ご回答ありがとうございます。
助かってます。
どうもMySQLではソート機能は使えなさそうなのでヘッダーに
ボタンかもしくはそれに代わるようなものを配置して
それをクリックしたタイミングでサーバへSQL文を送ってソートされたデータを取得するか
すでに取得しているDataSetに入っている内容をソートすればいいのかと考えております。
(これからできるかやってみます。だめかもしれませんので・・・)
もっと、よき方法がございましたらアドバイスいただけましたら幸いです。
回答としてマークを付けたいですが返答がほしいので少し置いときます。
マイクロソフトの方はそっと見守っていただけましたら幸いです。
- 編集済み 極小テック 2010年7月17日 0:49 一行へんな文章消去
-
ObjectDataSourceを使ってカスタムページングを行なえば良いと思いますよ。
(参考)
ASP.NET 2.0とSQL Server 2005によるカスタムのページング処理
http://japan.internet.com/developer/20060620/25.htmlASP.NET 2.0 GridView サンプル - GridView データのページングおよび並べ替え
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnvs05/htm/ASP2.0/gridview/GridViewEx05.asp
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/- 回答としてマーク 極小テック 2010年7月17日 1:26