2009-07-13 8 views
0

Ich weiß, dass wir dies bereits zuvor in einer anderen ASPX-Seite getan haben, die diese Masterseite verwendet. Also habe ich das in einem neuen ASPX versucht, aber aus irgendeinem Grund erkennt es das Master-Objekt nicht. Und die ASPX definitiv auf die Master-Seite in der Seitendirektive richtig eingestellt und es gibt keine Fehler in diesem Sinne:Zugriff auf MasterPage-Objekt über einen ASPX-Code-Behind

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
using System.Text; 

public partial class LandingPage : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     Master.HideNavbar(); 
    } 
} 
+1

Welche Fehler sehen Sie? –

Antwort

3

Versuchen Sie, Ihre Masterpage auf Ihrer aspx-Datei zu verweisen:

<%@ MasterType virtualpath="~/YourMasterPage.master" %> 
1

zu erhalten typisierte Master-Seite-Klasse in Ihrem Code müssen Sie festlegen, welche Art ist es, entweder in page-Direktive oder mit Mastertype-Richtlinie auf der Seite:

<%@ Page masterPageFile="~/MasterPage.master"%> 

<%@ MasterType virtualPath="~/MasterPage.master"%> 

Wenn Sie über diese Richtlinien nicht, können Sie al Master-Eigenschaft im Code Wege werfen:

(MasterPage)this.Master 

siehe auch hier http://msdn.microsoft.com/en-us/library/c8y19k6h.aspx

Edit:
ist HideNavbar() public-Methode?

Verwandte Themen