如何加载页面而不影响母版页?

时间:2013-12-24 09:53:32

标签: asp.net ajax master-pages master

我有MasterPage.master吼叫

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<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:Button ID="Button1" runat="server" Text="load page" />
        <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">

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

我想在每次没有加载母版页的ContentPlaceHolder1中加载页面.aspx。 我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我认为更新小组就是您的目标。

http://msdn.microsoft.com/en-us/library/bb399001.aspx

它允许您使用AJAX更新内容,以避免刷新外部内容。

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

     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

     <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:updatepanel ID="Updatepanel1" runat="server">
               <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
               </Triggers>
               <ContentTemplate>
                    <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
                    </asp:ContentPlaceHolder>
               </ContentTemplate>
               </asp:updatepanel>

               <asp:Button ID="Button1" runat="server" Text="load page" />

          </div>
    </form>
</body>
</html>

我无法测试这个,但它应该给你一个想法。

按钮1现在应该触发更新面板进行刷新。您还可以使用

以编程方式刷新updatepanel
UpdatePanel1.Update()