0

私はこれに対する良い答えを見つけることができないようです。データベースからデータを取得して次のように表示する Web ページを設定しようとしています。

username1
image1.jpg
画像名

image2.jpg 画像名
2

ユーザー名
2 image3.jpg
imagename3

ユーザー名
3 image4.jpg
imagename4

image5.jpg 画像名
5

image6.jpg 画像名
6

ユーザー名があり、そのユーザー名には 1 つ以上の画像と画像名があります。すべてのユーザー名が同じ数の画像を持つわけではありません。

私の質問は、これを行うための最良の方法は何ですか? ネストされたリピーターを備えたリピーター コントロールを使用して、これを実現できます。面倒ですが、機能します。

私が読んだことから、ListView は同じことを行うことができるはずですが、よりクリーンです。ListView に関する私の問題は、GroupItemCount を設定する必要があることです。必要なように動的ではありません。別の ListView をネストできると思いますが、リピーターを使用するのと同じくらい多くのコードであることが判明しました。

これらの方法(リピーターまたはリストビュー)のいずれかが他の方法よりも優先されます。または、私が考えていないこれを行うためのより良い方法はありますか? 私がやろうとしていることは普通ではないと思うので、もっと速い方法があると思います. 私には、 for ループを使用して従来の ASP でこれを行う方がはるかに簡単に思えます。

ご意見をお寄せいただきありがとうございます。

4

1 に答える 1

0

特定の数 (GroupItemCount) の ItemTemplate がインスタンス化されると、GroupTemplate がインスタンス化されます。コレクション内の各オブジェクトに対して ItemTemplate が呼び出され、最初にユーザーのコレクションが作成されます。ItemDataBound イベント中に GroupItemCount を変更できる場合でも、次のユーザー グループの作成方法が反映されます。今まで画像について何もなかったので、そのようなタスクに ListView を使用することはできないと言えます。

メインのリピーター (または必要に応じて ListView) の ItemTemplate 内でリピーターを使用するのが最良の選択であり、これも一般的であるため、混乱を心配する必要はありません。別の開発者はあなたの意図を簡単に理解できます。

于 2012-06-13T19:20:40.670 に答える