質問

アプリケーションを完全に制御するには、GridViewまたはHTMLテーブルのどちらを好みますか? そしてなぜ?

たとえば、GridView / HTMLテーブルにオンザフライで行ごとにハイパーリンクを作成する必要があります。その機能(またはこの機能のような他の機能)を追加するのがより簡単なオブジェクトはどれですか?

注:プログラムでデータセットを作成しています

役に立ちましたか?

解決

ソートまたはページングの組み込みサポートが不要で、レンダリングされた出力をさらに制御したい場合は、Repeaterコントロールを使用してテーブルを出力することを検討します。組み込みの並べ替え/ページングが必要な場合は、GridViewが非常に役立ちます。

両方の長所を使いたい場合は、ASP.net 3.5にアップグレードして、ListViewを使用してください。

編集: 'on-the-fly hyperlinks-per-row'の意味を明確にできますか?

他のヒント

Gridviewから離れます。ページングをレンダリングするには、データセット全体をプルダウンする必要があります。必要な行(6,0000の30〜40行など)のみをレンダリングし、個別のページャーコントロールを使用すると、はるかに高速になります。 また、HTML / CSSに関しては、リピーターまたはリストビューを使用すると、コードを完全に制御できるため、デバッグがはるかに簡単になります。

プレーンHTML <!> lt; table <!> gt; Response.Writeによって生成されるのは簡単であり、Microsoft以外のシステムで作業する場合、HTMLの生成を難しくする冗長なASP.NET Webコントロールがなければ裸にならないという利点もあります。すでに知っています。

ソートやページングが必要ない場合は、Repeaterまたは新しいListViewを使用するとよいでしょう。 RepeaterとListViewを使用すると、<asp:Table>コントロールに付属する退屈なサーバー側コードを回避しながら、HTMLを制御できます(この点でGridViewは完全なブラックボックスであり、ひどいHTMLを生成します):<!> quot; OK、新しい行。新しいセル。セルで何かをします。行にセルを追加します。テーブルに行を追加します。 <!> quot;を繰り返します。

一方、ページングとソートが必要な場合は、おそらくGridViewの方が優れたソリューションです。

データの並べ替え/ページングが必要な場合でも、GridViewまたはより単純なRepeaterのようなコントロールを使用して独自のhtmlを構築できます。 たとえば、リピーターを使用すると、AllowPagingプロパティがtrueに設定されたPagedDataSourceデータソースを使用して、ページネーションのカスタムシステムを構築できます。

唯一の問題は、単純なRepeaterでは、GridViewがネイティブに行う作業を行うために、より多くのコードを記述する必要があることは明らかです。

しかし、結果は高速です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top