我的母版页中有一个自定义用户控件,可将站点范围的JavaScript库加载到母版页的头部
像这样:
<html>
<head>
<CustomControl:MyScriptControl id="scripts" runat="server" />
</head>
<body>
<asp:ContententPlaceHolder id="pageContent" runat="server" />
</body>
</html>
我想让使用MasterPage的页面调用用户控件的方法 MyScriptControl ,所以基本上
public partial class ChildPage: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//// Invoke Method of MasterPage's UserControl: MyScriptControl
}
}
这可能吗?或者有更好的方法吗?
答案 0 :(得分:2)
步骤1:在aspx页面中添加MasterType指令
第2步:在主页面中创建一个公共方法,它将调用您的usercontrol方法
第3步:在您的页面中,您可以使用Master.Method()
答案 1 :(得分:1)
您应该在页面中使用MasterType指令。
使用MasterType,您的页面的Master
属性将是您的母版页的类型,而不是基类MasterPage
的类型。你应该可以做类似
protected void Page_Load(object sender, EventArgs e) {
Master.scripts.SomeMethod();
}