- PR -

headerの判定

1
投稿者投稿内容
ばなな
ベテラン
会議室デビュー日: 2005/06/16
投稿数: 91
投稿日時: 2005-11-10 10:22
お世話になっております。vb.netで開発をしております。

DataGridでHeaderかの判定を行う時、ItemDataBoundイベントで
e.Item.ItemType で ”ListItemType.Headerで判定を行いますが、
ボタンを押下されてから”DataGrid1.Controls(0).Controls.Count”で総行数を取得
して複数Hederがある為上から順にHederかを調べたいのですが、可能でしょうか?
調べてはいるのですが、方法がわかりません。ご存知の方ご指導お願いいたします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-11-10 10:55
引用:

ばななさんの書き込み (2005-11-10 10:22) より:

お世話になっております。vb.netで開発をしております。


前に立てたスレッド を拝見する限りでは、ASP.NET でしょうか?
DataGrid は Windows アプリケーションと Web アプリケーションでは違いますので、
今回のような質問は「VB.NET」云々よりも「ASP.NET」であることを書いて頂きたいです。

引用:

ボタンを押下されてから”DataGrid1.Controls(0).Controls.Count”で
総行数を取得して複数Hederがある為上から順にHederかを調べたいのですが、可能でしょうか?


DataGrid の Item プロパティでは、ヘッダとフッタは含まれません。
そのため、通常の方法で上から識別していくのは難しいです。
ItemDataBound イベントで対応するしかないのですが、Button が押下されてからでは不可能でしょう。

連結された時点 (ItemDataBound イベント) で、どこがヘッダまたはフッタなのかを、
DataGrid 内全体で管理するしかないかもしれません。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
todo
ぬし
会議室デビュー日: 2003/07/23
投稿数: 682
投稿日時: 2005-11-10 11:55
前回紹介した頁を見れば分かるはずです。
http://www.atmarkit.co.jp/fdotnet/dotnettips/095multiheader/multiheader.html



(3)から取得

((DataGridItem)MyGrid.Controls[0].Controls[i]).ItemType


(2)から取得

((DataGridItem)((Table)MyGrid.Controls[0]).Rows[i]).ItemType
ばなな
ベテラン
会議室デビュー日: 2005/06/16
投稿数: 91
投稿日時: 2005-11-10 18:33
todoさんご指導ありがとうございます。

datagridの編集後は途中にあるHeaderは判定できるのですが、一旦画面に表示され再度
判定しようとするとitem or AlternatingItem しか取得できません
申し訳ございませんが、再度ご指導お願いいたします。

[ メッセージ編集済み 編集者: ばなな 編集日時 2005-11-10 19:22 ]
1

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