C# 在ASP.NET WebForm上组合控件内容和html

C# 在ASP.NET WebForm上组合控件内容和html,c#,asp.net,C#,Asp.net,我需要一点帮助来获得正确的语法,以便将控件添加到Web表单中,或者如果不可能,我如何做到这一点 Webform1.aspx包含应用css的标题和导航栏。Default.aspx包含一个带有控件的页面。我希望Default.aspx看起来与Webform1.aspx相同,因此它具有相同的标题、导航栏和css 我的大多数尝试都会导致错误解析器错误消息:在包含内容控件的内容页中,仅允许直接使用内容控件。 目前的代码如下: Webform1.aspx: <!DOCTYPE html> <

我需要一点帮助来获得正确的语法,以便将控件添加到Web表单中,或者如果不可能,我如何做到这一点

Webform1.aspx包含应用css的标题和导航栏。Default.aspx包含一个带有控件的页面。我希望Default.aspx看起来与Webform1.aspx相同,因此它具有相同的标题、导航栏和css

我的大多数尝试都会导致错误
解析器错误消息:在包含内容控件的内容页中,仅允许直接使用内容控件。

目前的代码如下:

Webform1.aspx:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="wp-content/themes/newtheme/css/style.css" type="text/css" media="screen">
    <!-- other Css -->
<script>
    <!-- scripts -->
</script>
</head>
<body id="page1">
    <div id="main_outer">
      <div id="main"> 
        <!-- header -->
        <header>
        <div class="inside">
            <div class="extra-wrap">
              <h1><a>Header</a></h1>
            </div>
        </div>
        </header>
        <nav>
            <!-- navigation -->
        </nav>

        </div>
    </div>
</body>
<%@ Page Title="Welcome" Language="C#" MasterPageFile="~/members/themes/default/default.master" 
    AutoEventWireup="true" 
    Inherits="members_Default" 
    Codebehind="Default.aspx.cs" %>
<%@ Register Src="/members/controls/membership-info.ascx" TagName="membership" TagPrefix="uc1" %>
<asp:Content ID="Content1" 
    ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" 
    ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
        <uc1:membership ID="membership" runat="server" />
</asp:Content>

标题
Default.aspx:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="wp-content/themes/newtheme/css/style.css" type="text/css" media="screen">
    <!-- other Css -->
<script>
    <!-- scripts -->
</script>
</head>
<body id="page1">
    <div id="main_outer">
      <div id="main"> 
        <!-- header -->
        <header>
        <div class="inside">
            <div class="extra-wrap">
              <h1><a>Header</a></h1>
            </div>
        </div>
        </header>
        <nav>
            <!-- navigation -->
        </nav>

        </div>
    </div>
</body>
<%@ Page Title="Welcome" Language="C#" MasterPageFile="~/members/themes/default/default.master" 
    AutoEventWireup="true" 
    Inherits="members_Default" 
    Codebehind="Default.aspx.cs" %>
<%@ Register Src="/members/controls/membership-info.ascx" TagName="membership" TagPrefix="uc1" %>
<asp:Content ID="Content1" 
    ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" 
    ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
        <uc1:membership ID="membership" runat="server" />
</asp:Content>

您应该在Webform1.aspx中添加一个内容控件,然后将Default.aspx指定为新内容控件的内容。 这将有效地使Webform1成为默认页面的母版页,您必须在默认页面指令中将其设置为母版页。 您必须按照注释中的建议将Webform1更改为母版页,因此您必须决定是否使用当前分配的母版页,如果使用,则将其分配为Webform1的母版页。
多个母版页并不少见。

为什么
WebForm1.aspx
不是您的母版页?因为母版页的布局不同。看起来您需要一个母版页,一个与WebForm1.aspx匹配的另一个母版页。为什么不将其设为第二个母版页?您可以有多个母版页,以及继承母版页的母版页等。谢谢大家,这非常有用!