ASP.NET部分特×××和技巧

  動態切換母版:可以在內容頁的PreInit事件中設置this.MasterPageFile屬性以達到效果。此事件是在2.0的版本加入的,此事件發生在Init和Onload之前。
 使用主題:
  主題和CSS各有優缺點,主題可以做CSS無法做到的,但CSS也不是主題可以替代的。
  主題就是App_Theme下的文件夾,這個文件夾就代表一個主題,其中包含主題用到的主題文件(後綴名爲skin的文件),CSS文件,圖片等。主題中的CSS文件不用開發人員去手寫link,ASP.Net會自動添加link,以鏈接這個主題下的所有CSS文件。
  主題文件中可以包含特有的樣式定義,例如:
<asp:TextBox runat="server" BorderColor="Red" />
  這是CSS無法做到的。
  主題的作用可以說就是純控制頁面的外觀,而非去定義佈局(對於想通過主題的方式動態修改佈局的想法,我建議使用webpart)。所以母版頁並不支持設置主題,所以如果你的佈局代碼在主題中我建議你在設計佈局時,還是去習慣代碼佈局比較好。

 

  在.NET 1.x的時代,實現頁面間的代碼(包括前臺後臺)重用,是相當複雜的。2.0的出現,帶來了母版頁。但是母版頁只實現了頁面代碼的重用,對於後臺,內容頁無法覆蓋母版。當然,這是必然的。但是對於有時候必須進行後臺代碼的重用的時候,我是說,有些代碼所有頁面必須事前定義好,或者可能是成員、共同使用的方法。那麼我建議:
新建一個繼承自Page的類,所有的內容頁將繼承它。在這個類中定義你的方法,成員,以及相同處理代碼的事件。
例如
public class a : System.Web.UI.Page
{
 
  protected virtual void OnLoad(object sender, Eventargs e)
  {
    xxxxx
  }
 
  protected void Custom()
  {
    xxxxx
  }
}
 
那麼x.aspx的
public class x : a
{
  protected override void OnLoad(object sender, Eventargs e)
  {
    Custom();
  }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章