コンテンツページをマスターページの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";
私は得る:
エラー46タイプまたは名前空間名'Main'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)
エラーはデザイナーページにあります:
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; }
}
}
}