从 ascx 页面上的母版页访问变量
Access variable from master page on ascx page
我在 aspx 页面上有以下设置:
<%@ Page Title="" Language="C#" MasterPageFile="~/tt.master" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="tt_login" %>
<%@ MasterType VirtualPath="~/tt.master" %>
aspx.cs 页面上的这个:
public partial class tt_login : System.Web.UI.Page
{
protected new ttUser User
{
get { return Master.User; }
set { Master.User = value; }
}
在这种情况下,ttUser
能够从母版页访问变量。
到目前为止一切正常。
接下来,我有一个 ascx 页面,具有以下设置:
<%@ Control Language="C#" MasterPageFile="~/tt.master" AutoEventWireup="true" CodeFile="ttRightNav.ascx.cs" Inherits="Controls_ttRightNav" %>
<%@ MasterType VirtualPath="~/tt.master" %>
在同一页上:
protected new ###.##.ttUser User
{
get { return Master.User; }
set { Master.User = value; }
}
只有这次它说 the name master does not exist in the current context
据我所知,设置完全相同 - 我不明白为什么它不起作用。
几个想法:
ascx 页面不在根文件夹中 - 但因为它使用 ~
它引用根目录所以这应该无关紧要?
是因为这是一个ascx页面吗?
我错过了什么吗?
我已经尝试从 ascx.cs 页面引用 master 变量,但仍然有同样的问题。
基本上,如何在 ascx 页面上引用母版页中的变量?
我从母版页看到了一些关于投射的问题,但到目前为止还没有成功。
任何帮助将不胜感激 - 我完全被困住了!!!
编辑:
这不是上面提到的问题的重复 - 上面的问题是关于控件的 - 我正在尝试访问一个对象
- 制作
ttuser
public
- 尝试将母版页投射到特定的 class,然后获取需要的字段
tt_login loginPage = Page as tt_login;
或
tt_login loginPage = Master as tt_login;
我在 aspx 页面上有以下设置:
<%@ Page Title="" Language="C#" MasterPageFile="~/tt.master" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="tt_login" %>
<%@ MasterType VirtualPath="~/tt.master" %>
aspx.cs 页面上的这个:
public partial class tt_login : System.Web.UI.Page
{
protected new ttUser User
{
get { return Master.User; }
set { Master.User = value; }
}
在这种情况下,ttUser
能够从母版页访问变量。
到目前为止一切正常。
接下来,我有一个 ascx 页面,具有以下设置:
<%@ Control Language="C#" MasterPageFile="~/tt.master" AutoEventWireup="true" CodeFile="ttRightNav.ascx.cs" Inherits="Controls_ttRightNav" %>
<%@ MasterType VirtualPath="~/tt.master" %>
在同一页上:
protected new ###.##.ttUser User
{
get { return Master.User; }
set { Master.User = value; }
}
只有这次它说 the name master does not exist in the current context
据我所知,设置完全相同 - 我不明白为什么它不起作用。
几个想法:
ascx 页面不在根文件夹中 - 但因为它使用 ~
它引用根目录所以这应该无关紧要?
是因为这是一个ascx页面吗?
我错过了什么吗?
我已经尝试从 ascx.cs 页面引用 master 变量,但仍然有同样的问题。
基本上,如何在 ascx 页面上引用母版页中的变量?
我从母版页看到了一些关于投射的问题,但到目前为止还没有成功。
任何帮助将不胜感激 - 我完全被困住了!!!
编辑:
这不是上面提到的问题的重复 - 上面的问题是关于控件的 - 我正在尝试访问一个对象
- 制作
ttuser
public - 尝试将母版页投射到特定的 class,然后获取需要的字段
tt_login loginPage = Page as tt_login;
或
tt_login loginPage = Master as tt_login;