我在母版页中有一个用于标题的usercontrol。我需要从某些内容页面获取属性“linkName”。即对某些页面应该是
<uc1:AdminHeader ID="Adminheader1" runat="server" linkClass="adminHeaderSelected" link="manageData"></uc1:AdminHeader>
应该是其他几个页面
<uc1:AdminHeader ID="AdminHeader1" runat="server" linkName="adminusers"></uc1:AdminHeader>
如何实现这些内容页面?
答案 0 :(得分:0)
向您的MasterPage添加公共属性LinkName
,以获取/设置UserControl的属性。
然后您可以通过以下方式从页面设置它:
((MyMaster)this.Page.Master).LinkName = "adminusers";
其中MyMaster
是您的MasterPage的实际类型。
VB.NET:
DirectCast(Me.Page.Master, MyMaster).LinkName = "adminusers"
编辑:如果要在运行时添加不存在的属性:
创建方法AddHeaderAttribute
:
public void AddHeaderAttribute(string key, string Value)
{
Adminheader1.Attributes.Add(key, Value);
}
VB.NET
Public Sub AddHeaderAttribute(key As String, Value As String)
Adminheader1.Attributes.Add(key, Value)
End Sub
以上述方式调用此方法,例如
((MyMaster)this.Page.Master).AddHeaderAttribute("LinkName", "adminusers");
http://msdn.microsoft.com/en-us/library/system.web.ui.usercontrol.attributes.aspx