我有一个母版页'Master1',我使用了内容占位符'content1'并加载 'content1'中的页面'Page1'和'page2'。有没有办法确定哪个页面被加载到内容占位符,无论它是动态的'Page1'还是'Page2'。
答案 0 :(得分:0)
我想也许你误解了母版页是如何工作的?
在您的母版页中,您可以定义您希望所有页面共享的页面内容,例如页眉和页脚等。您定义了内容持有者:
<asp:ContentPlaceHolder runat="Server" ID="MainContent">
</asp:ContentPlaceHolder>
Page1.aspx 等的内容将被注入ContentPlaceHolder
。
然后在您的aspx页面中,您只需定义它应该使用的主页面:
<%@ Page Language="C#" MasterPageFile="~/MyMasterPage.Master" ... />
然后定义应该注入主服务器中占位符的内容:
<asp:Content ID="MainContent" ContentPlaceHolderID="MainContent" runat="server">
put all your html in here
</asp:Content>
请注意用于ContentPlaceHolderID
属性的ID,以便将其注入正确的位置 - 母版页可能有多个占位符。因此,Page1.aspx和Page2.aspx都可以加载到占位符中,您只需导航到要显示的页面即可。无需在母版页上完成任何操作。
答案 1 :(得分:0)
试试这个
ViewContext.RouteData.GetRequiredString( “动作”)