2010-12-01 2 views
1

私は、ストアドプロシージャから返されているデータを表示しているデータグリッドを持っています。それはうまく動作します。問題はソートをしたいということです。私はグリッドにソート機能があることを知っていますが、私はサーバーに戻って新しいデータセットを取得したくありません。私がやりたいことは、既に表示されているデータを並べ替えることだけです。asp.net datagrid sorting

誰でもどのようにそれが行われたかについてのアイデアはありますか?

ありがとうございます!

UPDATE

基本的に、私はこの問題の簡単な解決策を見つけることができませんことができませんでした。私はgridViewコントロールに私のdataGridを更新しようとしましたが、それでも(私の特定の問題のために)困難でした。私はすべての変更をやり直して、必要なデータだけを持っている別のグリッドを追加しました。

他の誰かがこのような問題を抱えている場合は、データグリッドから取り出してjQueryに書き出すことをお勧めします。正方形のペグを丸い穴に詰め込もうとした時間と比べて、私が望むデータを持ったテーブルを書いたことができました(そして、以下に述べるプラグインを使って完全にソート可能です)。

答えて

1

あなたができることの1つは、それがそれほど大きくない場合、現在の結果セットをユーザーセッションに保存することです。その後、データベースへのラウンドトリップを処理せずに、DataGridのソート機能を使用することができます。

あなたはサーバーに戻って旅をしますが、しばしばウェブサーバーへの旅行はデータベースを含む旅行よりもはるかに速いです。

1

クライアント側で並べ替えを行うことが欲しいと思うように聞こえます(組み込みのグリッドソートはサーバー側であり、往復を望まないように思えます)。 jQueryを使用している場合は、クライアント上のソートを処理するための非常に簡単なプラグインがいくつかあります。 GVはすべて私のテーブル(ASP.netアプリケーション内のGridViewコントロール)のために使用されるCSSクラスです

jQuery(".gv").tablesorter(); 

:たとえば、tablesorterプラグイン(http://tablesorter.com/docs/)で、あなたは1行のコードでこれを行うことができます。

あなたはあなたのデータグリッドが<thead><tbody>に胸が張り裂けるされていることを確認する必要があります、これらを追加するJavaScriptの方法については、関連の質問を参照、またはあなたはPreRenderイベントでの分離コードからそれを行うことができます。ASP.NET 2.0 - DataGrid with tbody/thead

+0

このテーブルポータープラグインをデータグリッドで使用できますか?または単にgridviews?私の現在のプロジェクト(レガシー)は、(元々は1.1で書かれた)データグリッドを使用しています。これらのプラグインを利用する方法はありますか? – webdad3

+0

はい、DataGridで使用できます。すべてのプラグインの心配は、ページにhtmlの

があるかどうかです。 – Marcie

+0

私はこれを私のDGのために働かせることができませんでした。これはおそらくプラグインよりも多くのプロジェクト関連です。私のドリュータと時間があれば、DataGridsの代わりにjQueryを使ってページを書き直します。 – webdad3