是否可以在多个母版页中调用一个网络表单?

Is it possible to call a web form in multiple master pages?

我有一个 Web 表单,我希望 masterpage1 和 masterpage2 可以访问它。可能吗?如果是,如何?

提前致谢。

为简化起见,假设您在 Session 中存储了一个状态,它选择母版页代码隐藏。在此示例中,您可以拥有 2 个母版页并同时只使用其中一个:

//PreInit event of your desired page
protected override void OnPreInit(EventArgs e)
{
    if (!string.IsNullOrEmpty(Page.MasterPageFile))
    {
        if (Session["MyStatus"] == "1")
        {
            Page.MasterPageFile = "~/MyMaster1.master";
        }
        else
        {
            Page.MasterPageFile = "~/MyMaster2.master";
        }
    }
}

如果你想动态嵌套两个母版页,你可以这样做。这里同时有 2 个母版页:

protected override void OnPreInit(EventArgs e)
{
    if (!string.IsNullOrEmpty(Page.MasterPageFile))
    {
        if (Session["NestMaster"] == "1")
        {
            //setting a MasterPage to the Masterpage of the current page
            Page.Master.MasterPageFile = "~/MasterMaster.master";
        }
    }
}