【问题标题】:GridView is not shown in the content page in aspx page with Master pageGridView 未显示在带有母版页的 aspx 页面的内容页面中
【发布时间】:2019-03-21 10:49:12
【问题描述】:

我的 aspx 页面中有一个 gridview,带有 母版页

运行 aspx 页面时,它不会在内容页面中显示 gridview,而是显示在 aspx 页面的顶部。

当我删除 gridview 并用一些简单的文本代替它时,它不起作用。

请看这张图片:

请帮帮我。

下面是我的代码。

母版页

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Mpdue.master.cs" Inherits="Mpdue" %>

<!DOCTYPE html>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %>
<html>
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <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>
            <asp:ScriptManager ID="ScriptManager" EnableScriptGlobalization="true" EnableScriptLocalization="true"
                runat="server">
            </asp:ScriptManager>
            <div>
                <div id="generale">
                    <div id="header">
                        <div id="headerLeft">
                            &nbsp;
                        </div>
                        <div id="headerRight">
                            &nbsp;
                        </div>
                        <div class="clear">
                        </div>
                    </div>
                    <div id="login">
                        <div id="loginLeft">
                        </div>
                        <div id="loginCenter">
                            <asp:Label ID="lbWelcome" runat="server">
                            </asp:Label>
                        </div>
                        <div id="loginRight">
                        </div>
                        <div class="clear">
                        </div>
                    </div>
                    <br />
                    <fieldset>
                        <legend style="font-size: 12px; font-weight: bold; color: Red; margin-left: 10px;">
                        </legend>
                    </fieldset>
                    <div id="footer">
                        <div id="footerLeft">
                        </div>
                        <div id="footerCenter">

                        </div>
                        <div id="footerRight">
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </form>
</body>
</html>

aspx 页面

<%@ Page Title="" Language="C#" MasterPageFile="Mpdue.master" AutoEventWireup="true" CodeFile="sDefault.aspx.cs" Inherits="sDefault" %>

<%@ MasterType VirtualPath="Mpdue.master" %>

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

    <asp:Panel ID="pngvProducts" runat="server">
        <asp:GridView ID="gvProducts" AutoGenerateColumns="False" EmptyDataText="No data" EnableViewState="true"
            runat="server" DataKeyNames="sID" CssClass="mGrid" Width="500" HorizontalAlign="Center"
            AllowPaging="True" PageSize="15"
            OnPageIndexChanging="gvProducts_PageIndexChanging"
            OnRowDataBound="gvProducts_RowDataBound">
            <AlternatingRowStyle CssClass="altrows" />
            <Columns>
                <%--Column 0--%>
                <asp:TemplateField HeaderText="N." ItemStyle-CssClass="ddl_Class_new" ItemStyle-HorizontalAlign="Center">
                    <ItemTemplate>
                        <%#Container.DataItemIndex + 1%>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>

            <PagerTemplate>
                <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="/aspnet/Img/bot_back_doppio.gif"
                    CommandArgument="First" CommandName="Page" />
                <asp:ImageButton ID="ImageButton2" runat="server" ImageUrl="/aspnet/Img/bot_back.gif"
                    CommandArgument="Prev" CommandName="Page" />
                Pagina
                        <asp:DropDownList ID="ddlPages" runat="server" AutoPostBack="True" CssClass="ddl_Class"
                            OnSelectedIndexChanged="ddlPages_SelectedIndexChanged">
                        </asp:DropDownList>
                di
                        <asp:Label ID="lblPageCount" runat="server"></asp:Label>
                <asp:ImageButton ID="ImageButton3" runat="server" ImageUrl="/aspnet/Img/bot_next.gif"
                    CommandArgument="Next" CommandName="Page" />
                <asp:ImageButton ID="ImageButton4" runat="server" ImageUrl="/aspnet/Img/bot_next_doppio.gif"
                    CommandArgument="Last" CommandName="Page" />
            </PagerTemplate>

        </asp:GridView>
    </asp:Panel>
</asp:Content>

【问题讨论】:

    标签: asp.net gridview master-pages


    【解决方案1】:

    您将 ContentPlaceHolder 放置在其他任何内容之上,因此内容当然会位于标题之上。 您需要将 ContentPlaceHolder 放置在您希望放置内容的 Master 的位置。

    <form id="form1" runat="server">
        <div>
            <div>
                <div id="generale">
                    <div id="header">
    
                    </div>
                    <div id="login">
    
                    </div>
    
                    <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"></asp:ContentPlaceHolder>
    
                    <fieldset>
                        <legend style="font-size: 12px; font-weight: bold; color: Red; margin-left: 10px;"></legend>
                    </fieldset>
    
                    <div id="footer">
    
                    </div>
                </div>
            </div>
        </div>
    </form>
    

    【讨论】:

    • 感谢您的帮助
    猜你喜欢
    • 2012-07-24
    • 1970-01-01
    • 2013-09-23
    • 1970-01-01
    • 1970-01-01
    • 2012-09-05
    • 1970-01-01
    • 1970-01-01
    • 2020-04-28
    相关资源
    最近更新 更多