1

ユーザー用のメニューがあるasp.netで1つのサイトマスターを設計しましたが、ゲストが特別なページにアクセスしたときにメニューが表示されないようにしたいです。

4

1 に答える 1

1

特定の条件でマスター ページの実行時間を設定できます。Page_PreInitページのレンダリングの直前に実行されるイベントがあります。このイベントでは、以下のようにコードを実行する必要があります

protected void Page_PreInit(object sender, EventArgs e) 
{ 
 if (Membership.GetUser() == null) //check the user weather user is logged in or not
    this.Page.MasterPageFile = "~/General.master";//master page with menu
 else
    this.Page.MasterPageFile = "~/myMaster.master";//master page with out menu
} 

以下のように、継承されたページからマスターページのコンテンツを変更することもできます

Master.FindControl("menu").Visible = true;
于 2013-06-11T05:31:17.250 に答える