-1

我有一个用于多个内容页面的母版页。在每个内容页面上都有一个用户控件。我想在单击母版页中的按钮时调用该控件的方法。

可能吗?

4

2 回答 2

2

您可以这样做以访问内容页面控件

protected void Button1_Click(object sender, EventArgs e)
{
    UserControl_Type uc1 = 
    (UserControl_Type)ContentPlaceHolder1.FindControl("UserControlId");
    if (uc1 != null)
    {
        uc1.Method();
    }
}

我认为您应该将 UserControl 移动到母版页并在母版页 cs 文件中单击按钮访问 usercontrol 方法。如果有您不想显示此用户控件的任何内容页面,您可以执行以下操作

使用内容占位符:

在母版页中:添加:

<asp:contentplaceholder id="UcControlPlaceHolder" runat="server">
<!-- User control here -->
</asp:contentplaceholder>

在您不想显示 UserControl 的内容页面中,添加以下标签并从您希望 UserControl 显示的所有内容页面中删除此标签:

<asp:Content ID="UcControlContent1" 
ContentPlaceHolderID="UcControlPlaceHolder" Runat="Server">    
</asp:Content>
于 2012-12-27T04:00:20.160 回答
1

我想在单击母版页上的按钮时调用该控件的方法。可以吗???

是和不是。如果您在谈论客户端,那么可以,您可以通过 JavaScript 调用控件上的方法。如果您在谈论服务器端,那么没有。


但是,我确实要问,如果控件在每个内容页面上都可用,那么它是存在于版页上的一个很好的候选者,是吗?如果您在特定内容页面中不需要它,您可以隐藏它。

于 2012-12-27T03:57:38.510 回答