5

私はMaster Pageasp:PanelコントロールとそのVisible = False背後にあるコードを設定するコードを持っています。
Visible = True、コンテンツページの1つを変更したいと思います。どうやって?

マスター ページ コード ビハインド:

AccountUserInfo.Visible = false;  

コンテンツ ページのコード ビハインド:

((Panel)Master.FindControl("AccountUserInfo")).Visible = true;

コンテンツ ページのコード ビハインドが機能しないようです。

4

5 に答える 5

3

ASP Web サイトのライブ サイクルでは、マスター ページのコードよりも先にページのコードが実行されます。

したがって、基本的には、マスターページで次のようにすると、以前に「true」に設定されていた「Visible」設定を上書きするだけです: AccountUserInfo.Visible=false;

また、AccountUserInfo のいずれかの親コンテナーの可視性が false に設定されている場合、AccountUserInfo.Visible ゲッターは false を返すことに注意してください (私見: Microsoft が行った不適切な選択...)。

于 2013-05-07T11:40:37.230 に答える
1

これを試してください

protected void Page_PreRender(object sender, EventArgs e)
{

((Panel)Master.FindControl("panel")).Visible = true;

}

それがあなたを助けることを願っています

于 2013-05-07T11:45:19.893 に答える