| ■97871 / ) |
Re[4]: 動的に追加したユーザーコントロールのイベントが取得できない |
□投稿者/ emi (9回)-(2021/07/30(Fri) 19:25:35)
|
■No97863 (WebSurfer さん) に返信 > ■No97849 (emi さん) に返信 > >>「PostBack の際にも動的に追加」はしていて、想定通りにユーザーコントロールの追加と値の保持は出来ています。 > > 質問者さんのコードを見てみましたが、やはりそこのところに問題があるようです。 > > 自分の環境で検証してみましたが、質問者さんが行ったようにポストバックの際 Session からユーザーコントロール > を取得して配置した場合はユーザーコントロールのボタンクリックイベントは発生しません。 > > 初期画面や[条件追加]ボタンクリックで生成したのと同様に Page.LoadControl で生成して配置する必要がありま > す。 > > Session からユーザーコントロールを取得した場合は ViewState がロードできないということによるのではないかと > 思います(想像です)。 > > なお、No97852 で述べたユーザーコントロールの生成のタイミングが Page_Load か Page_Init は今回のケースでは > 影響ないようです。ただ、場合によってはその問題が影響することもありますので、動的なコントロールの追加は、 > Microsoft の推奨のとおり Page_Init で行うのが良いと思います。 >
ご回答ありがとうございます。 PostBack時もPage.LoadControlで生成して配置した場合、ViewState による値の保持は期待できないと思うのですが、 それは別途、入力値を保存しておいて、プログラムで1つ1つセットしてあげることになるのでしょうか?
|
|