DOBON.NETプログラミング掲示板過去ログ
GridViewで動的にヘッダを作成しイベントを追加したいのですが…
題名: GridViewで動的にヘッダを作成しイベントを追加したいのですが…
著者: nmls
日時: 2007/11/22 13:08:28
ID: 21040
この記事の返信元:
(なし)
この記事への返信:
(なし)
ツリーを表示
環境/言語:[何でも可]
分類:[ASP.NET]
いつもお世話になっております。
[開発環境]
VisualStudio2005
ASP.NET 2.0(VB)
<やりたい処理>
[1] GridView(以下gv)は検索ボタン(以下btn)をクリックした際に
検索処理を実行します。
※btnはCommandFiledでは無く、Pageに配置されているボタンです
[2] gvのDataBoundイベントgvのHeaderRowに動的にDropDownList
を生成します。
[3] [2]で作成したDropDownListのSelectedIndexChangedイベント
で[1]の処理を実行します。
<困っているところ>
[3]の箇所です。
デザイン画面でgvのテンプレートの編集→HeaderTemplateを開き、
DropDownListを配置し、
イベントタブ→アクション→SelectedIndexChangedに[1]のメソッド名を
登録したところ、想定通りの処理をしてくれました。
ただし、「動的に生成する」となると、どのように設定すればいいか
わかりません。
<現状の動的生成部分のコード>
Dim cbo As New DropDownList
cbo.ID = "cboResult_master"
cbo.Width = 45
cbo.Font.Size = 10
cbo.AutoPostBack = True
' ↓は試しに書いてみたモノですが、うまく動きませんでした
' AddHandler cbo.SelectedIndexChanged, AddressOf btn_Click
'
cbo.Items.Add(New ListItem("", [動的な部分]))
cbo.Items.Add(New ListItem("1", [動的な部分]))
cbo.Items.Add(New ListItem("2", [動的な部分]))
grd.HeaderRow.Cells(1).Controls.Add(cbo)
以上です。
恐縮ですが、ご教授のほどよろしくお願いいたします。
また、質問内容で不足がございましたら、お手数ですがレスにてご連絡ください。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[ASP.NET]
いつもお世話になっております。
[開発環境]
VisualStudio2005
ASP.NET 2.0(VB)
<やりたい処理>
[1] GridView(以下gv)は検索ボタン(以下btn)をクリックした際に
検索処理を実行します。
※btnはCommandFiledでは無く、Pageに配置されているボタンです
[2] gvのDataBoundイベントgvのHeaderRowに動的にDropDownList
を生成します。
[3] [2]で作成したDropDownListのSelectedIndexChangedイベント
で[1]の処理を実行します。
<困っているところ>
[3]の箇所です。
デザイン画面でgvのテンプレートの編集→HeaderTemplateを開き、
DropDownListを配置し、
イベントタブ→アクション→SelectedIndexChangedに[1]のメソッド名を
登録したところ、想定通りの処理をしてくれました。
ただし、「動的に生成する」となると、どのように設定すればいいか
わかりません。
<現状の動的生成部分のコード>
Dim cbo As New DropDownList
cbo.ID = "cboResult_master"
cbo.Width = 45
cbo.Font.Size = 10
cbo.AutoPostBack = True
' ↓は試しに書いてみたモノですが、うまく動きませんでした
' AddHandler cbo.SelectedIndexChanged, AddressOf btn_Click
'
cbo.Items.Add(New ListItem("", [動的な部分]))
cbo.Items.Add(New ListItem("1", [動的な部分]))
cbo.Items.Add(New ListItem("2", [動的な部分]))
grd.HeaderRow.Cells(1).Controls.Add(cbo)
以上です。
恐縮ですが、ご教授のほどよろしくお願いいたします。
また、質問内容で不足がございましたら、お手数ですがレスにてご連絡ください。