Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET在一个站点中包含多个主题_Asp.net_Themes - Fatal编程技术网

ASP.NET在一个站点中包含多个主题

ASP.NET在一个站点中包含多个主题,asp.net,themes,Asp.net,Themes,我有一个应用程序主题目录,还有一个ASP.NET网站的母版页 我可以根据母版页使用两个不同的主题吗?MSDN有一篇关于 不能直接应用ASP.NET 将主题添加到母版页。如果你加一个 @Master的主题属性 指令,页面将引发 运行时出错 但是,主题适用于主控形状 这些情况下的页面: 如果在内容中定义了主题 页母版页在 内容页的上下文,因此 内容页的主题应用于 母版页也是 如果站点作为一个整体进行了配置 通过包含主题来使用主题的步骤 pages元素中的定义 (ASP.NET设置架构)元素 除上

我有一个应用程序主题目录,还有一个ASP.NET网站的母版页


我可以根据母版页使用两个不同的主题吗?

MSDN有一篇关于

不能直接应用ASP.NET 将主题添加到母版页。如果你加一个 @Master的主题属性 指令,页面将引发 运行时出错

但是,主题适用于主控形状 这些情况下的页面:

  • 如果在内容中定义了主题 页母版页在 内容页的上下文,因此 内容页的主题应用于 母版页也是

  • 如果站点作为一个整体进行了配置 通过包含主题来使用主题的步骤 pages元素中的定义 (ASP.NET设置架构)元素

除上述内容外,您还可以查看有关的部分。你可以

来自MSDN的示例

protected void Page_PreInit(object sender, EventArgs e)
{
    switch (Request.QueryString["theme"])
    {
        case "Blue":
            Page.Theme = "BlueTheme";
            break;
        case "Pink":
            Page.Theme = "PinkTheme";
            break;
    }
}
但是不能同时使用两个主题,这没有任何意义。但是,您可以根据使用的母版页更改主题

要回答评论中的问题,可以为不同的子文件夹设置不同的主题。这来自MSDN:

Web.config文件中的主题设置 适用于中的所有ASP.NET网页 那个申请。中的主题设置 Web.config文件遵循正常操作 配置层次结构约定。 例如,仅将主题应用于 作为页面的子集,您可以将 文件夹中的页面具有自己的 Web.config文件或创建 根Web.config文件中的 指定一个文件夹。有关详细信息,请参阅 配置特定文件和 子目录


您知道您是否可以在web.config的子目录中使用
?如果是这样的话,你也许可以这样把它分开。你能解释一下“基于母版页”吗。不能在母版页中设置主题。