1

問題: UpdatePanel とプレースホルダーを含むウィザード コントロールを含むコンテンツ ページ。UpdatePanel の上には DropDownList があります。ユーザーがドロップダウン リストの選択を変更したときに、ドロップダウン リストの下にさまざまな入力コントロールを表示する必要があります。ユーザーがウィザード コントロールで [次へ] をクリックしたときに、これらの動的コントロールからもデータを取得できるようにする必要があります。

ポストバック中にこれらのコントロールからデータを取得するには、すべての動的コントロールを OnInit メソッドで作成する必要があることを知っています。ただし、ドロップダウン リストの SelectedIndexChanged イベントが発生すると、OnInit メソッドが呼び出され、次に PageLoad が呼び出され、最後に SelectedIndexChanged イベントのハンドラが呼び出されます。ViewState は、OnInit メソッドと PageLoad メソッドが呼び出されるまで復元されないため、OnInit が呼び出された時点でユーザーがリスト ボックスで何を選択したかを知る方法はありません。ダイナミック コントロールを作成します。

では、この問題をどのように解決しますか?JavaScript を使用して、ページ全体またはそのほとんどを作成する必要がありますか?

前もって感謝します。

4

2 に答える 2

0

私は、この種の要件に対して昔ながらの方法を使用する傾向があります。Visible プロパティを false に設定して、更新パネルに必要なすべてのコントロールを記述します。次に、ポストバックでドロップダウンの状態を読み取り、適切なコントロールの Visible プロパティを true に設定します。このように、「動的な」コントロールはなく、Visible プロパティが false であるコントロールはレンダリングされないため、ユーザーに表示されるまでダウンロードされません。

于 2010-11-04T17:25:59.000 に答える