C# Programming

 

ImageRepeater

開発環境: Visual Studio 2005 

1.目次

1.目次
2.目的
3.参考書
4.Repeater

2.目的

Repeaterの使い方

3.参考書

(1)

4.Repeater

リピータは、GridViewと同じようにデータソースを指定したフォーマットで繰り返し表示するためのコントロールです。しかし、デザイナーで指定できる内容はほとんどなく、ほとんど手書きで書いていく必要があります。GUIで指定できない分、自由度があります。うまく使えば、いろいろな用途があると思います。

ここでは、SqlDataSourceを使った簡単な例を説明します。まずは、「SqlDataSourceの設定」を参考に、SqlDataSourceの設定を行ってください。

(1)  まず、ツールボックス→Data→Repeaterをフォーム上にドラッグ&ドロップします。Repeaterタスク→「データソースの構成」で、4.で作成したSqlDataSourceを指定します。
Image

(2)Repeaterタスクを見てもらえばわかりますが、GUIから設定できることは、データソースの構成以外、何もありません。では、どうすればいいのかというと、コードを書く必要があります。
コードビューに切り替えると、次のようにRepeaterコントロールが生成されているのが確認できます。
Image

(3)ここで、 </asp:...の前に、<をタイプすると、次のようにオートコンプリートで、5つの候補が出てきます。
Image
それぞれの意味は、次のとおりです。

タグ 説明
HeaderTemplate ヘッダー部分のテンプレート
ItemTemplate 各項目のテンプレート
AlternatingItemTemplate オルタネーティング項目のテンプレート
SeparatorTemplate セパレータのテンプレート
FooterTemplate フッター部分のテンプレート

そこで、次のように、入力してどのように表示されるの見てみます。
Image

結果は次のようになります。要は、ヘッダー、フッタの間に、アイテムとオルタネーティングアイテムがセパレータで分離されて表示されるという動きになります。
Image

(4)固定文字列では何のありがたみもないので、データソースからアイテムに値が入るように変更します。
この場合、<%# DataBinder.Eval(Container.DataItem, "データ項目名") %>により、データバインドされたアイテムを挿入することができます。

たとえば、次のように設定することにより、
Image

このような結果が得られます。
Image

(5)あとは、使い方次第でテーブル形式にも出力することができます。
Image

この結果は、次のようになります。
Image