把用户控件(UserControl)注册至web.config
平常时,是因为多页共同的部分,可以开发为UserControl(用户控件),这样好维护。在网页设计时,哪一个网页需要,把用户控件拉(注册)进去即可。如:
View Code
1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
2
3 <%@ Register Src="~/Header.ascx" TagName="Header" TagPrefix="uc1" %>
4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml">
6 <head runat="server">
7 <title></title>
8 </head>
9 <body>
10 <form id="form1" runat="server">
11 <div>
12 <uc1:Header ID="Header1" runat="server" />
13 </div>
14 </form>
15 </body>
16 </html>
2
3 <%@ Register Src="~/Header.ascx" TagName="Header" TagPrefix="uc1" %>
4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml">
6 <head runat="server">
7 <title></title>
8 </head>
9 <body>
10 <form id="form1" runat="server">
11 <div>
12 <uc1:Header ID="Header1" runat="server" />
13 </div>
14 </form>
15 </body>
16 </html>
你会留意到第3行与第12行,特别是第3行,是这次所提及的重点。如果你没有把这个用户控件注册到web.config,每一页所使用到这个用户控件,都会在页面上看到第3行的语句。
好的,你打开web.config在<system.web></system.web>节点内添加如下代码:
View Code
<pages>
<controls>
<!-- 注册用户控件 -->
<add tagPrefix="uc1" src="~/Header.ascx" tagName="Header"/>
</controls>
</pages>
<controls>
<!-- 注册用户控件 -->
<add tagPrefix="uc1" src="~/Header.ascx" tagName="Header"/>
</controls>
</pages>
这样子,在旧有的引用这个用户控件的页面,可以删除第3行代码。如果有新页面使用这个用户控件。页面只会出现第12行了。
当然你还可以注册Ajax或ReportViewer等:
View Code
<add namespace="Microsoft.Reporting.WebForms" assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" tagPrefix="rsweb"/>
<add namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" tagPrefix="ajaxToolkit"/>
<add namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" tagPrefix="ajaxToolkit"/>