- PR -

repeaterコントロールの値の取得方法

1
投稿者投稿内容
未記入
大ベテラン
会議室デビュー日: 2005/03/23
投稿数: 105
投稿日時: 2007-08-08 09:26
何時もお世話になっています。

今回 asp.net 2005 vb
にて開発をおこなっています。

データの一覧を表示させるのに何時もはgridviewを使用して
いたのですが、今回表示させたい項目数が多く一行では表現が
難しい為、ヘダー部分 アイテムの部分を2段にすることで
表示しようと考えました。

しかしデータグリッドで2段にする方法もあるらしいのですが
細かく扱えそうなリピータコントロールを使用しようと考え
2段で表示することまではできたのですが、今度は逆にこの
値をプログラムで取得する方法をいろいろと探ってみたので
すがわかりませんでした。
(gridviewであれば簡単に取得することが可能であるのですが)

repeaterコントロールには
<table id="tab1" cellSpacing="0" borderColor="#c25d00" cellPadding="0" border="1" style="border-bottom-style: none">
<TR>
<TD vAlign="center" align="middle" width="180" height="25">
<%# DataBinder.Eval(Container.DataItem,"bumon") %>
</TD>
のようにデータをセットしています。(一部分)

あとrepeaterコントロールにはselectedIndexChangeのようなイベント
を取る方法はあるのでしょうか?

よければお教えください。

宜しくお願いします。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2007-08-08 11:30
repeaterだと基本的に用意されている機能は表示のみじゃないでしょうか。
DataListは使えませんか?

あと、GridViewでこんな風にデータの表示方法を変えることは可能です。
http://dotnetfan.org/blogs/dotnetfanblog/articles/672.aspx
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2007-08-09 06:54
複数列で表示するならDataListがよいのでは・・・


私が尊敬するScott Mitchellさんの記事が参考になるかと。

Displaying Data with the DataList and Repeater Controls
http://www.asp.net/learn/data-access/tutorial-29-vb.aspx

Formatting the DataList and Repeater Based Upon Data
http://www.asp.net/learn/data-access/tutorial-30-vb.aspx

Showing Multiple Records per Row with the DataList Control
http://www.asp.net/learn/data-access/tutorial-31-vb.aspx
_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
未記入
大ベテラン
会議室デビュー日: 2005/03/23
投稿数: 105
投稿日時: 2007-08-10 09:39
どっとねっとふぁんさん
ACCESSさんお返事ありがとうございます。

いろいろ調べた結果簡単に出来そうなのはDATALISTのようなので
DATALISTを使用したいのですが、datalistを画面にはりitemtemplate
の部分にボタンをはりそのプロパティのCommandNameをselectとし
サーバー側のコードでselectedIndexchangedを書いているのですが
イベントを発生させることは出来ません。
datalistは何か特別な設定をしないとボタンのイベントがとれないの
でしょうか?

わかる方がおられましたらお願いします。
しょくぱん
常連さん
会議室デビュー日: 2006/05/31
投稿数: 31
投稿日時: 2007-08-10 10:22
ItemCommandイベントを使用してみてください。
未記入
大ベテラン
会議室デビュー日: 2005/03/23
投稿数: 105
投稿日時: 2007-08-10 10:43
しょくぱんさん

お返事ありがとうございます。

とりあえずHTMLの方でdatalistの方に
<asp:DataList ID="DataList1" runat="server" OnItemCommand="abc">

と記述しましてサーバーコードの方には
Protected Sub abc(ByVal sender As Object, ByVal e As DataListCommandEventArgs)
としたのですがやはりイベントをひろってくれません。
設定の仕方がおかしいのでしょうか?
ちなみにしょくぱんさんからお返事を頂く前に参項にしたサイトにも同じようなことを
かいていて同じようにしたのですがイベントを取得できませんでした。
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet10/aspnet10_04.html

なにかきづくことがある方は宜しくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)