JavaStruts を使用したことのあるプログラマーは、Struts にテンプレート タグがあることを知っているはずですが、このタグは使用が複雑ですが、多数のページを持つプログラムに非常に便利です。ただし、ASP.NET には既製の実装が存在せず、中国でもこの点に関する議論はほとんどありません。実際、sender メソッドを書き換えることで同様の機能を実現することもできます。以下は私のプロジェクトで使用される基本テンプレートクラスです。
1システムを使用する。
2System.Web.UI を使用します。
3
4名前空間RepeaterDemo.Web.PageTemplate
5{
6 /**//// <概要>
7 /// WebPageTmplate ページ テンプレートの基本クラス。
8 /// </まとめ>
9 パブリック クラス WebPageTmplate:System.Web.UI.Page
10 {
11
12 プロパティ#地域プロパティ
13 文字列 pageTitle="タイトル";
14 string pageHeader= "<table cellpacing='0' cellpadding='0' width='100%' height='49' background='' border='0'>" +
15 "<tr>" +
16 " <td valign='top'><img alt='' src='' border='0'></td>" +
17 "</tr>" +
18 "</テーブル>" ;
19 文字列ページスクリプト。
20
21 string pageLeft=" メニュー";
22
23 string pageFooter="<div align='center'>meil.cnblogs.com meil Copyright 2006</div>";
24
25
26 パブリック文字列 PageTitle
27 {
28 set {pageTitle=値;}
29 get {ページタイトルを返す;}
30}
31
32 パブリック文字列 PageHeader
33 {
34 set {pageHeader=値;}
35 get {ページヘッダーを返す;}
36}
37
38 パブリック文字列 PageScript
39 {
40 set {pageScript=value;}
41 get {ページスクリプトを返す;}
42 }
43
44 パブリック文字列 PageLeft
45 {
46 セット {pageLeft=値;}
47 get {ページ左に戻る;}
48 }
49
50 パブリック文字列 PageFooter
51 {
52 セット {pageFooter=値;}
53 取得 {ページフッターを返す;}
54 }
55
56 #エンドリージョン
57
58 protected オーバーライド void Render(HtmlTextWriter ライター)
59 {
60
61
62 Writer.Write(@"<html><head><title>" + pageTitle + @"</title>");
63 Writer.Write(pageScript + @"</head><body>");
64
65 ライター.Write(pageHeader);
66
67 Writer.Write(@"<table><tr><td width='200'> " + pageLeft + @"</td><td>");
68
69 // 次に、基本クラスは、ASPX ページで HTML コードと ASP.NET コントロールをレンダリングできます。
70 Base.Render(ライター);
71
72 ライター.Write("</td></tr></table>");
73
74 Writer.Write(@"<div align='cnter'>" + pageFooter + @"</div>");
75
76 ライター.Write(@"</body></html>");
77 }
78 }
79
80}
81
82
http://meil.cnblogs.com/archive/2006/06/22/432709.html