摘要:使用ASP.net 動態式CSS樣式
一、此段落轉貼置:http://goodlucky.pixnet.net/blog/post/30368252-asp-.net-%E5%8B%95%E6%85%8B%E8%AE%8A%E6%8F%9Bcss
在ASP .NET中要動態變換CSS
第一種方法
需先在<head></head>加入
<link id="MyStyleSheet" rel="stylesheet" type="text/css" runat="server" />
<head>
<link id="MyStyleSheet" rel="stylesheet" type="text/css" runat="server" />
</head>
之後,在程式碼的地方寫入
Sub Page_Load(Sender As Object, E As EventArgs)
If Not (IsPostBack)
MyStyleSheet.Attributes.Add("href","/css/StyleCss.css")
End If
End Sub
第二種方法
HtmlLink css = new HtmlLink();
css.Href = "css/fancyforms.css";
css.Attributes["rel"] = "stylesheet";
css.Attributes["type"] = "text/css";
css.Attributes["media"] = "all";
Page.Header.Controls.Add(css);
二、我自己修改的的
1.
xx.aspx
<head>之間加入
<link id="MyStyleSheet" rel="stylesheet" runat="server" type="text/css" />
<body>之間加入Sqldatasource1
------------------------------------------------
2.
(1)建立style資料表 (id,style欄位)
(2)使用資料庫撈出style欄位的字串
xx.aspx.vb
Imports System.Data
Imports System.Data.SqlClient
Imports System.Web.Configuration
Partial Class shoptyle_style1_style1master
Inherits System.Web.UI.MasterPage
Public Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Sqldatasource1.DataSourceMode = SqlDataSourceMode.DataReader
'== 如果 DataSourceMode 屬性設為 DataReader 值,則會傳回 IDataReader 物件。
'== 當完成讀取資料時,請關閉 IDataReader 物件。
Dim args As New DataSourceSelectArguments
'== DataSourceSelectArguments 提供一項機制,讓資料繫結控制項於擷取資料時,
'== 用來向資料來源控制項要求資料相關的作業。
Dim I_DR As IDataReader = CType(Sqldatasource1.Select(args), IDataReader)
Try
I_DR.Read() '***** 重點!! *****
Catch ex As Exception
Response.Write("找不到商家")
Response.End()
End Try
Dim Style As String = I_DR.Item("style").ToString()
'== 當完成讀取資料時,請關閉 IDataReader 物件。
I_DR.Close()
I_DR.Dispose()
MyStyleSheet.Attributes.Add("href", Style & "/style.css") '動態更改CSS*********************************************
End Sub
End Class