我有一個自定義的Web控件,它繼承自ASP.NET按鈕控件。在渲染方法覆蓋中,我渲染自己的HTML輸出(div)。問題是我如何以最正確的方式呈現該控件的樣式屬性。ASP.NET自定義Web控件樣式呈現樣式規則
我可以簡單地遍歷for/foreach循環中的Style集合並將其寫入HTMLTextWriter,但也許.NET有一個將樣式定義寫入htmlwriter的構建方法?
感謝
我有一個自定義的Web控件,它繼承自ASP.NET按鈕控件。在渲染方法覆蓋中,我渲染自己的HTML輸出(div)。問題是我如何以最正確的方式呈現該控件的樣式屬性。ASP.NET自定義Web控件樣式呈現樣式規則
我可以簡單地遍歷for/foreach循環中的Style集合並將其寫入HTMLTextWriter,但也許.NET有一個將樣式定義寫入htmlwriter的構建方法?
感謝
的解決方案是使用CssStyleCollection對象的Value屬性在ASP.NET Web控件。 http://msdn.microsoft.com/en-us/library/system.web.ui.cssstylecollection.value.aspx
這聽起來像你想要什麼ApplyStyle()
方法:
var style = new Style();
style.ForeColor = System.Drawing.Color.Red;
style.BackColor = System.Drawing.Color.Yellow;
var ctrl = new WebControl();
ctrl.ApplyStyle(style);
不完全...我已經有一個樣式集合作爲WebControl的一個屬性。但我找到了解決方案 - CssStyleCollection具有Value屬性,它完全返回我需要的:) –