在 aspx 页面的代码隐藏中从母版页访问用户控件
Accessing usercontrols from the master page in the code behind of aspx page
我已将没有母版页的应用程序迁移到使用母版页的应用程序。我从每个页面中删除了对用户控件的引用,并将它们放在母版中,以便它们可以在所有页面中使用。在后面的代码中,我无法再访问每个用户控件的属性。下面是旧代码,我也尝试更新它,但在新代码中,尝试访问用户控件的标题 属性 时出错。任何帮助都会很棒!
旧代码:
Me.ucNavBar.Title = "Add New Product"
新代码:
Master.FindControl("ucNavBar").Title = "Add New Product"
新代码错误:
'Title' is not a member of 'System.Web.UI.Control'.
将其转换为您的特定类型以获得标题 属性:
CType(Master.FindControl("ucNavBar"), UserControl).Title = "Add New Product"
以下是否有帮助?
包含在 .master 文件中:
<%@ Register TagPrefix="uc" TagName="Navbar" Src="Navbar.ascx" %>
以及您需要它的地方:
<uc:Navbar runat="server" ID="Navbar" />
并直接在master.vb中访问:
Navbar.Title = "Add new product"
并在使用母版页的页面中访问它,将以下内容添加到 .master.vb:
Public Property NavbarTitle as String
Get
return Navbar.Title
Set(ByVal value As String)
Navbar.Title = value
End Property
.aspx:
<%@ Reference Control="XXXXX.master" %>
.aspx.vb
Dim XXXXMaster As XXXXMaster= CType(Me.Page.Master, XXXXMaster)
CType(XXXXMaster.FindControl("ucNavBar"), UserControl).Title = "Add New Product"
或
Dim XXXXMaster As XXXXMaster= CType(Me.Page.Master, XXXXMaster)
XXXXMaster.NavbarTitle = "Add New Product"
仅供参考,我没有测试这段代码,但希望它能有所帮助...
我已将没有母版页的应用程序迁移到使用母版页的应用程序。我从每个页面中删除了对用户控件的引用,并将它们放在母版中,以便它们可以在所有页面中使用。在后面的代码中,我无法再访问每个用户控件的属性。下面是旧代码,我也尝试更新它,但在新代码中,尝试访问用户控件的标题 属性 时出错。任何帮助都会很棒!
旧代码:
Me.ucNavBar.Title = "Add New Product"
新代码:
Master.FindControl("ucNavBar").Title = "Add New Product"
新代码错误:
'Title' is not a member of 'System.Web.UI.Control'.
将其转换为您的特定类型以获得标题 属性:
CType(Master.FindControl("ucNavBar"), UserControl).Title = "Add New Product"
以下是否有帮助?
包含在 .master 文件中:
<%@ Register TagPrefix="uc" TagName="Navbar" Src="Navbar.ascx" %>
以及您需要它的地方:
<uc:Navbar runat="server" ID="Navbar" />
并直接在master.vb中访问:
Navbar.Title = "Add new product"
并在使用母版页的页面中访问它,将以下内容添加到 .master.vb:
Public Property NavbarTitle as String
Get
return Navbar.Title
Set(ByVal value As String)
Navbar.Title = value
End Property
.aspx:
<%@ Reference Control="XXXXX.master" %>
.aspx.vb
Dim XXXXMaster As XXXXMaster= CType(Me.Page.Master, XXXXMaster)
CType(XXXXMaster.FindControl("ucNavBar"), UserControl).Title = "Add New Product"
或
Dim XXXXMaster As XXXXMaster= CType(Me.Page.Master, XXXXMaster)
XXXXMaster.NavbarTitle = "Add New Product"
仅供参考,我没有测试这段代码,但希望它能有所帮助...