有沒有辦法從嵌套母版頁訪問用戶控件的puplic屬性?從嵌套母版頁訪問用戶控件
讓我來解釋進一步
我有3個深深的母版頁
- global.master
- LargeTopNav.master(繼承global.master)
- LargeTopNav25-50-25。 master(繼承LargeTopNav.master)
- feature.aspx - 此頁面是我想訪問我們自定義的頁面呃控制我在LargeTopNav.master上能夠設置屬性。
我對.net相當陌生,所以任何幫助表示讚賞。
有沒有辦法從嵌套母版頁訪問用戶控件的puplic屬性?從嵌套母版頁訪問用戶控件
讓我來解釋進一步
我有3個深深的母版頁
我對.net相當陌生,所以任何幫助表示讚賞。
有一個MasterType
property,你可以像例如feature.aspx頁面上設置:
<%@ MasterType VirtualPath="~/masters/LargeTopNav.master" %>
然後,反過來,通過你在LargeTopNav創建屬性提供訪問控件的屬性。主母版頁類:
public partial class LargeTopNavMaster : MasterPage
{
// ...
public string ThePropertyOfTheContainedControl
{
get { return MyContainedControl.TheProperty; }
set { MyContainedControl.TheProperty = value; }
}
// ...
}
最後,在你feature.aspx頁,訪問屬性母版頁,提供訪問底層控制的:
public partial class Feature : Page
{
// ...
protected void Page_Load(object sender, EventArgs e)
{
Master.ThePropertyOfTheContainedControl = "Some nice text.";
}
// ...
}
一般我在這種情況下做的就是讓你的母版頁實現一個接口(這將對您的用戶控件的屬性),然後從你的頁面feature.aspx
使用this.Master
(或this.Master.Master
,請務必檢查null
)以獲取對母版頁的引用。
然後,只需將主頁面轉到您的界面並訪問該屬性即可。
很失落。 MasterType可以有兩個屬性 - 我是否將它們設置爲largeTopNav.master?那麼,我如何通過largetopvan.master頁面類創建屬性? – nkuebelbeck
我對.net非常陌生,我知道自己已經足夠危險:) – nkuebelbeck
@nkuebelbeck我已經從MSDN頁面添加了示例,參見上文。 –