推荐:优秀ASP.NET程序员修炼之路“为人写程序”
初级的程序员或经验不足的程序员往往只意识到自己的程序是写给计算机的,而不会在意程序其实也是写给人的,或在意得不够、不全面。
写给机器的程序,往往追求的
使用过JavaStruts程序员应该知道,Struts中有一个模板标记,虽然其使用起来比较复杂,但对于有大量页面的程序来说其带来了很多方便。但是,在ASP.NET中并没有现成实现可用,这方面国内讨论的也很少,其实,重写sender方法我们也可以实现类似的功能。下面是我项目中使用的一个基类模板类。
以下为引用的内容:
1using System; 2using System.Web.UI; 3 4namespace RepeaterDemo.Web.PageTemplate 5{ 6 /**//// <summary> 7 /// WebPageTmplate 页模板基类。 8 /// </summary> 9 public class WebPageTmplate:System.Web.UI.Page 10 { 11 12 属性#region 属性 13 string pageTitle="Title"; 14 string pageHeader= "<table cellspacing='0' cellpadding='0' width='100%' height='49' background='http://localhost//RepeaterDemo//Images/top_stripe1.gif' border='0'>" 15 " <tr>" 16 " <td valign='top'><img alt='' src='http://localhost//RepeaterDemo//Images/title.gif' border='0'></td>" 17 " </tr>" 18 "</table>" ; 19 string pageScript; 20 21 string pageLeft=" Menu"; 22 23 string pageFooter="<div align='center'>meil.cnblogs.com meil 版权所有 2006</div>"; 24 25 26 public string PageTitle 27 { 28 set {pageTitle=value;} 29 get {return pageTitle;} 30 } 31 32 public string PageHeader 33 { 34 set {pageHeader=value;} 35 get {return pageHeader;} 36 } 37 38 public string PageScript 39 { 40 set {pageScript=value;} 41 get {return pageScript;} 42 } 43 44 public string PageLeft 45 { 46 set {pageLeft=value;} 47 get {return pageLeft;} 48 } 49 50 public string PageFooter 51 { 52 set {pageFooter=value;} 53 get {return pageFooter;} 54 } 55 56 #endregion 57 58 protected override void Render(HtmlTextWriter writer) 59 { 60 61 62 writer.Write(@"<html><head><title>" pageTitle @"</title>"); 63 writer.Write(pageScript @"</head><body>"); 64 65 writer.Write(pageHeader); 66 67 writer.Write(@"<table><tr><td width='200'> " pageLeft @"</td><td>"); 68 69 // 其次允许基类呈现ASPX页面中的HTML代码及ASP.NET控件 70 base.Render( writer ); 71 72 writer.Write("</td></tr></table>"); 73 74 writer.Write(@"<div align='cnter'>" pageFooter @"</div>"); 75 76 writer.Write(@"</body></html>"); 77 } 78 } 79 80}
|
分享:实现.NET应用程序的自动更新应用程序更新的方法一般有两种:一是通知用户(比如发E-mail),让用户到指定的网站地址下载更新的程序;二是将更新的职责从用户那边转移到应用程序自身,由应用程序自身取代用户获取并安装一个