• 締切済み

CascadingDropDownの値取得方法

ASP.NETでASP.NET AJAX Control Toolkitを使っています。 年月日や国県市と言った連動するドロップダウンが作りたくて、CascadingDropDownを使ってみたのですが、ドロップダウン自体が連動して値が変わる処理は出来たのに、何故か値の取得ができなくて困っています。 状況うまく説明できないので箇条書き↓ 1.ユーザーコントロール(xx.ascx)を作っています 2.DropDownとCascading~を各3つとScriptManager、Buttonを配置しています 3.値のセット処理はxx.ascxのCascading~にServicePathとServiceMethodを指定しています 4.指定メソッド(xx.asmxのGetData())ではCascadingDropDownNameValue[]なリスト値を返しています (KeyとValueはちゃんとセットされていると思います) 5.xx.ascx.csのPage_Load()内でCascading~.SelectedValue="xxx"として初期値セットしています ボタンクリックされた時の各ドロップダウンの値を取得したいのですが、Cascading~.SelectedValueもターゲットのDropDown.SelectedValueもどちらも""が返って来てしまい、選択されている値が取得できない状況です。値の取得方法が悪いのか、はたまた値セット段階が悪いのか… どのようにすれば選択値を取得するのか、どうかご存知の方いらっしゃいましたらご教授ください。

みんなの回答

回答No.1

お世話になります。 CascadingDropDown は使った事がないので推測ですが ViewState に値が保存されてないのでは? 試しに UpdatePanel の中に入れてみるとか。

Kusuki
質問者

お礼

長らくお礼が遅れて申し訳ありません。 現場を離れてしまい詳細が思い出せませんが、 最終的に、かなり煩雑なCascadingDropDownの使用を諦め、 UpdatePanelに普通のDropDownを配置して処理を組みました。 (質問段階でUpdatePanelの使い方をよく分かっていなかったため、 Cascading~を使ったのですが、いざ使ってみたら、 UpdatePanel+普通のDropDownの方が数倍楽でした(苦笑)) ありがとうございました。

関連するQ&A