2014-03-07 83 views
3

我需要動態地保存在我的樣式表的變化,例如,我有我的styles.css有:ASP.NET - 更改樣式表動態

#body { 
    color: grey; 
} 

我的Default.aspx:

<body id="body" runat="server"> 
<asp:Button ID="but" runat="server" onclick="but_Click"/> 

我的C#代碼:

protected void but_Click(object sender, EventArgs e) 
     { 
      body.Attributes["bgcolor"] = "lightblue"; 
     } 

是否可以永久保存我對CSS文件所做的更改?

謝謝大家! Firmino

+0

如果你需要改變的樣式表動態,那麼你需要的文件處理來改變樣式表。 –

回答

1

理想情況下,你不能!

由於CSS是服務器文件,我們無法直接更新,但可以直接添加樣式進行控制。

我不確定這一點,但你可以嘗試一些骯髒的竅門,即通過簡單的讀取和寫入文件和附加樣式在CSS文件的底部。

試試看看它是否有效?

http://support.microsoft.com/kb/816149

+0

非常感謝您的回答。我想這就是我真的要解決這個問題:)再次感謝! – user3392252

+0

太棒了!很高興幫助你。 –

1

你有沒有考慮過System.Web.UI.HtmlControls.HtmlGenericControl?有關更多信息,請參閱http://msdn.microsoft.com/en-us/library/system.web.ui.htmlcontrols.htmlgenericcontrol(v=vs.110).aspx

這不會永久地改變你的樣式表,如果你需要的話,我會與上面提供的其他答案一起:)。

+0

感謝您的回覆RvdV79。這不是理想的解決方案,不過謝謝! – user3392252

+0

我同意,因爲您想永久更改樣式表(對嗎?)。但是,您可以嘗試從存儲的條目動態構建您的樣式表,比如數據庫。但是,這仍然是一些需要執行的工作。 – RvdV79

+0

再次感謝隊友。這是我執行這項任務的想法之一,但我試圖不用這個重載數據庫。這確實是一些工作:)謝謝! – user3392252