我正在尝试让我的内容页面能够访问母版页上的 ASP:Literal。
我的内容页面为:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="viewProduct.aspx.cs" Inherits="AlphaPackSite.viewProduct" Title="Hi there!" %>
<%@ MasterType TypeName="Main" %>
然后我的母版页 Main.master 有:
<asp:Literal runat="server" ID="lblBasket" />
但是当我尝试做时从内容页面:
Master.basket.Text = "test";
我得到:
Error 46 The type or namespace name 'Main' could not be found (are you missing a using directive or an assembly reference?)
错误在设计器页面上:
public new Main Master {
get {
return ((Main)(base.Master));
}
}
我后面的母版页代码是:
namespace AlphaPack.MasterPages
{
public partial class Main : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
this.IsLoggedIn = Request.IsAuthenticated;
}
public bool IsLoggedIn
{
get { return this.ViewState["isLoggedIn"] as bool? ?? false; }
set { this.ViewState["isLoggedIn"] = value; }
}
}
}
最佳答案
设计器是否在您的 AlphaPack.MasterPages
命名空间中?
MasterType
不是完全合格的,应该是这样吗?难道你也不必提供路径吗? (不熟悉,抱歉)。
如果您使用 MasterPageFile
引用而不是 MasterType
,它会如何响应?
关于c# - 找不到 ASP.NET 母版页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3699174/