使用ascx文件,成功解决代码复用的问题
aspx是asp.net的页面文件,可以单独运行;ascx文件是自定义控件,不能单独运行,只能在aspx文件中使用,这几天在继续开发网站,为了保持整站风格统一,顶部,下拉菜单,还有底部的内容都是相同,当前台显示的页面都比较多的时候,挨个修改相当的不方便,还容易遗漏.现在的解决办法是将重复的使用的变成一个自定义控件,这样只要修改一下控件,所有页面都跟着修改了,省事!
在default.aspx还有view.aspx以及viewitem.aspx页面中,都用到了上面的控件.
下面就是viewitem.aspx的源码:
<%@ Page Language="C#" Codebehind="ViewItem.aspx.cs" Inherits="Web.ViewItem" %>
<%@ Register Src="Top.ascx" TagName="Top" TagPrefix="uc2" %>
<%@ Register Src="Memu.ascx" TagName="Memu" TagPrefix="uc3" %>
<%@ Register Src="Bottom.ascx" TagName="Bottom" TagPrefix="uc1" %>
<!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>
<%=ItemName%>
</title>
<link
rel="stylesheet" type="text/css" href="CSS/style.css"
/>
<link
rel="stylesheet" type="text/css" href="CSS/menu1.css"
/>
<link
rel="stylesheet" type="text/css" href="CSS/menu2.css"
/>
<script
src="Scripts/AC_RunActiveContent.js"
type="text/javascript"></script>
</head>
<body>
<form
id="form1" runat="server">
<div
class="HackBox">
</div>
<uc2:Top
ID="Top1" runat="server" />
<uc3:Memu
ID="Memu1" runat="server" />
<div
class="ViewClass">
<div
class="ViewClassTop">
</div>
<h1>
<%=ItemName%>
</h1>
<div
class="ViewClassContent">
<%=ItemContent%>
</div>
<div
class="ViewClassFoot">
</div>
</div>
<div
class="HackBox">
</div>
<uc1:Bottom
ID="Bottom1" runat="server" />
</form>
</body>
</html>
下面就是viewitem.aspx的源码:
<%@ Page Language="C#" Codebehind="ViewItem.aspx.cs" Inherits="Web.ViewItem" %>
<%@ Register Src="Top.ascx" TagName="Top" TagPrefix="uc2" %>
<%@ Register Src="Memu.ascx" TagName="Memu" TagPrefix="uc3" %>
<%@ Register Src="Bottom.ascx" TagName="Bottom" TagPrefix="uc1" %>
<!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">
</head>
<body>
</body>
</html>