我在内容占位符中出错。当我尝试创建母版页时,它在母版页中向我显示如下错误,我无法在.aspx页面中看到任何项目,如按钮,标签等。
此外,我无法从VS工具箱添加内容占位符,它会在内容占位符按钮上显示一个十字标记。
{ Error Rendering Control - ContentPlaceHolder1
An unhandled exception has occurred.
This control can only be used in a MaserPage.}
答案 0 :(得分:0)
ASP.NET master页面允许您为应用程序中的页面创建一致的布局。单个母版页定义了应用程序中所有页面(或一组页面)所需的外观和标准行为。 除了将出现在所有页面上的静态文本和控件之外,母版页还包括一个或多个ContentPlaceHolder控件。这些占位符控件定义了可替换内容将出现的区域。反过来,可替换内容在内容页面中定义。这是一个母版页的例子
<%@ Master Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server" >
<title>Master page title</title>
</head>
<body>
<form id="form1" runat="server">
<table>
<tr>
<td><asp:contentplaceholder id="Main" runat="server" /></td>
<td><asp:contentplaceholder id="Footer" runat="server" /></td>
</tr>
</table>
</form>
</body>
</html>
这里应该是一个看起来像
的内容页面<% @ Page Language="C#" MasterPageFile="~/Master.master" Title="Content Page 1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Main" Runat="Server">
Main content.
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Footer" Runat="Server" >
Footer content.
</asp:content>
请在此处详细了解ASP.NET Master Pages