0

我是 ASP.NET 的新手,似乎我搞砸了基于 Master 的 Web 表单页面。似乎我混合了一些无效的 html 代码,但不知道为什么。

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Clips.aspx.cs" Inherits="Clip.Clips" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">

        <asp:EntityDataSource ID="entityDataSource" runat="server" ConnectionString="name=ClipEnt" DefaultContainerName="ClipEnt" EnableDelete="True" EnableFlattening="False" EnableInsert="True" EnableUpdate="True" EntitySetName="Clips" EntityTypeFilter="Clip" OnSelecting="EntityDataSource_Selecting">
        </asp:EntityDataSource>
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" DataSourceID="entityDataSource">
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
            </Columns>
        </asp:GridView>

            <div>
            <h1>Sending Email</h1>
        <table>
            <tr>
                <td>From:</td>
                <td>
                    <asp:TextBox ID="txtFrom" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>From EMail:</td>
                <td>
                    <asp:TextBox ID="txtFromEmail" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>To:</td>
                <td>
                    <asp:TextBox ID="txtTo" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>To Email:</td>
                <td>
                    <asp:TextBox ID="txtToEmail" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>Subject:</td>
                <td>
                    <asp:TextBox ID="txtSubject" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>Message:</td>
                <td>
                    <asp:TextBox ID="txtMessage" runat="server" TextMode="MultiLine" Height="138px" 
                        Width="467px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td colspan="2" align="right">
                    <asp:Button ID="btnSend" runat="server" Text="Send Email" 
                        onclick="btnSend_Click" />
                </td>
            </tr>
        </table>
        <asp:Label ID="Label1" runat="server" ForeColor="Blue" />
    </div>
    </form>
</body>
</html>

</asp:Content>
4

2 回答 2

0

在母版页中,您有以下内容:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">

        </asp:ContentPlaceHolder>
    </div>
    </form>
</body>
</html>

您只需要在内容页面中有这个剥离的标记。请注意,我已从内容页面中删除、 、DOCTYPE<html>标记-它们将从Site.Master母版页呈现。<head><body><form>

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Clips.aspx.cs" Inherits="Clip.Clips" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

    <asp:EntityDataSource ID="entityDataSource" runat="server" ConnectionString="name=ClipEnt" DefaultContainerName="ClipEnt" EnableDelete="True" EnableFlattening="False" EnableInsert="True" EnableUpdate="True" EntitySetName="Clips" EntityTypeFilter="Clip" OnSelecting="EntityDataSource_Selecting">
    </asp:EntityDataSource>
    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" DataSourceID="entityDataSource">
        <Columns>
            <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
        </Columns>
    </asp:GridView>

    <div>
        <h1>Sending Email</h1>
        <table>
            <tr>
                <td>From:</td>
                <td>
                    <asp:TextBox ID="txtFrom" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>From EMail:</td>
                <td>
                    <asp:TextBox ID="txtFromEmail" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>To:</td>
                <td>
                    <asp:TextBox ID="txtTo" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>To Email:</td>
                <td>
                    <asp:TextBox ID="txtToEmail" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>Subject:</td>
                <td>
                    <asp:TextBox ID="txtSubject" runat="server" Width="250px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>Message:</td>
                <td>
                    <asp:TextBox ID="txtMessage" runat="server" TextMode="MultiLine" Height="138px"
                        Width="467px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td colspan="2" align="right">
                    <asp:Button ID="btnSend" runat="server" Text="Send Email"
                        OnClick="btnSend_Click" />
                </td>
            </tr>
        </table>
        <asp:Label ID="Label1" runat="server" ForeColor="Blue" />
    </div>
</asp:Content>
于 2013-11-03T17:35:11.300 回答
0

开发 asp.net 网站时要记住的一些要点 -

  1. asp.net web 表单只能包含一个form带有属性的标签runat='server'。因此,当 Web 表单从母版页继承时,它会form从母版页继承标记。因此,无需form在 Web 表单中单独添加标签。
  2. 页面的公共部分应放置在母版页中,而更改部分应放置在继承母版页的 Web 表单中。网站页眉和页脚对于每个页面都是静态的。所以它们应该放在母版页上。网站的内容因页面而异。因此它们应该放置在继承母版页的 Web 表单上。
  3. 指向公共资源的链接,即站点样式表和 javascript 文件也应该在母版页中放置一次。继承母版页的 Web 表单将自动继承它们。

这些是您可以轻松开发带有母版页的 Web 表单的一些内容。

于 2013-11-03T17:49:04.327 回答