我想以編程方式在頁面中切換樣式,這是基於GridView中元素的CSS類。我已經成功地在幾個正常(非模板化)元素的類屬性中完成了這項工作,但出於某種原因,它似乎不適用於模板控件。 Visual Studio將數據綁定代碼視爲不透明文本(事實上,甚至將其作爲不透明字符串進行着色)。數據綁定是不是以這種方式支持和?是否不可能在GridView中聲明性地綁定ItemStyle上的CssClass屬性?
我在類文檔中找不到任何說明這種情況的東西,但另一方面,它不起作用,Visual Studio似乎暗示這是按設計進行的。
編輯:一個例子。這裏聲明瞭一個Gridview,並且在列定義中,ItemStyle-CssClass屬性被設置爲兩個值;一個是硬編碼的,另一個是取自一個枚舉變量的當前值。假設在這種情況下,StyleHelper是一個靜態類,Festivity屬性是StyleSelectorEnum類型,當前值是StyleSelectorEnum.PartyMode。
<asp:GridView runat="server">
<Columns>
<asp:TemplateField ItemStyle-CssClass="style1 <%= Lib.Web.StyleHelper.Festivity.ToString() %>" />
<ItemTemplate>
<div />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
在這個例子中,系統產生將包含與TD條目出現這樣的行表:
<td class="style1 <%= Lib.Web.StyleHelper.Festivity.ToString() %>" >
在實踐的時候,我本來希望它會是這樣的:
<td class="style1 PartyMode" >
你可以發表某種例子嗎? – MadSkunk
您是否使用'!important'來覆蓋任何未知/不可見的應用樣式? – bobthyasian
@MadSkunk發表 - 希望有所幫助。 – bwerks