我正在为我的母版页添加一个菜单。
我创建了一个站点地图并添加了一个控件并收到此错误:
由于控件无法修改Controls集合 包含代码块(即<%...%>)。
以下是我的主页代码:
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="~/master/template.master.cs" Inherits="template" %>
<!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>Enhancement</title>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
<link href="<% = Page.ResolveUrl("~/css/master.css") %>" rel="Stylesheet" type="text/css" />
<link href="<% = Page.ResolveUrl("~/css/default.css") %>" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<!-- BEGIN: Sticky Header -->
<div id="header_container">
<div id="header">
<div id="headerBar">
<a href="<% = Page.ResolveUrl("~/default.aspx") %>">
<img src="<% = Page.ResolveUrl("~/images/logo.png") %>" id="logo" /></a>
<span id="header_text">Scrum Reports</span>
<asp:LoginStatus ID="LoginStatus1" runat="server" CssClass="login_status" LogoutAction="Redirect"
LogoutPageUrl="~/default.aspx" />
<asp:LoginName ID="LoginName1" runat="server" CssClass="login_user" />
</div>
</div>
<div id="Menu">
<asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSource1">
</asp:Menu>
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />
</div>
</div>
<!-- END: Sticky Header -->
<!-- BEGIN: Page Content -->
<div id="container">
<div id="content">
<asp:ContentPlaceHolder ID="Main" runat="server">
</asp:ContentPlaceHolder>
</div>
</div>
<!-- END: Page Content -->
<!-- BEGIN: Sticky Footer -->
<div id="footer_container">
<div id="footer">
Developed by Application Solutions
</div>
</div>
<!-- END: Sticky Footer -->
</form>
</body>
</html>
我发现以下类型的代码块是罪魁祸首:
<% = Page.ResolveUrl("~/css/default.css") %>
所以我的问题是,如何解决这个问题?我需要上面的代码才能使我的链接正常工作,但我也想使用菜单控件。
答案 0 :(得分:0)
我想通了,我不得不将标头标签中的css引用移到表单标签中:
<form>
<link href="<% = Page.ResolveUrl("~/css/master.css") %>" rel="Stylesheet" type="text/css" />
<link href="<% = Page.ResolveUrl("~/css/default.css") %>" rel="stylesheet" type="text/css" />
</form>