MasterPage 動態載入CSS

MasterPage 動態載入CSS

 

今日看到學妹在做Masterpage 才發現怪怪的

 

怎麼做了六個版面,後來詢問才得知

 

想要每個頁面都有不同的背景風格

 

當下的第六感是跟她講你可以嘗試用CSS去改寫

 

再來下午就回到自己研究室去TRY了

 

古哥還滿多類似資料的~

 

不過很少碰VB ,又剛好最近要用VB開發東西就順便摸了一下

 

 

 

首先

先建立二個 CSS   t1.css   t2.css  

 
   2: {
   1: body 
   3:     background-image: url("3.jpg");
   4: }

t2.css 與t1.css 一樣差在圖片檔而已

 

接著建立一個Masterpage 建立兩個按鈕 並轉頁過去載入該頁的CSS配置風格

   1:  
   2:   <form id="form1" runat="server">
   3:  
   4:       <asp:Button ID="Button1"  runat="server" Text="Button" 
   5:       PostBackUrl="~/Default1.aspx"  />
   6:       <asp:Button ID="Button2"  runat="server" Text="Button" 
   7:       PostBackUrl="~/Default2.aspx"  />         
   8:       <div>
   9:       <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
  10:       </asp:ContentPlaceHolder>
  11:       </div>
  12:  
  13:   </form>

 

C# 為例子

Default1.aspx   的page_load內加入

需額外 using System.Web.UI.HtmlControls;

   1: protected void Page_Load(object sender, EventArgs e)
   2:     {
   3:         HtmlLink css = new HtmlLink();
   4:         css.Href = "t3.css";
   5:         css.Attributes["rel"] = "stylesheet";
   6:         css.Attributes["type"] = "text/css";
   7:         Page.Header.Controls.Add(css);
   8:     }

 

VB 為例子

Default2.aspx   的page_load內加入

   1: Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
   2:        Dim css As New HtmlLink()
   3:        css.Href = "~/a.css"
   4:        css.Attributes.Add("rel", "stylesheet")
   5:        css.Attributes.Add("type", "text/css")
   6:        Header.Controls.Add(css)
   7:    End Sub

 

 

參考網址http://social.msdn.microsoft.com/Forums/zh-TW/236/thread/2ea2bc3f-191f-4738-b0d7-405dde9c9284

 

 

 

 

大家一起加入blogads 賺零用錢!!