我有一個3個TemplateColumns的數據網格,每個包含一個HeaderTemplate和一個ItemTemplate。我爲所有3列添加了HeaderStyle,ItemStyle和AlternatingItemStyle(因此在標籤之外)。如何將AlternatingItemStyle應用於特定的DataGrid TemplateColumn?
然後我決定要將不同的ItemStyle專門應用於第3列,這是通過在特定的TemplateColumn中添加ItemStyle 。這工作得很好,除了我仍然想要的AlternatingItemStyle不再適用。我想我可以在特定的TemplateColumn中添加另一個AlternatingItemStyle,但是這不被支持。我試着在代碼中添加它以及通過OnDataBinding命令,但AlternatingItemStyle不出現在Column屬性下面。代碼如下:
<asp:DataGrid ID="dgErrors"
CssClass="cssErrors"
Caption="Errors"
AutoGenerateColumns="false"
CellPadding="3"
runat="server">
<Columns>
<asp:TemplateColumn>
<HeaderTemplate>Job Number</HeaderTemplate>
<ItemTemplate><%# Eval("Job Number") %></ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<HeaderTemplate>Error</HeaderTemplate>
<ItemTemplate><%# Eval("Error") %></ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<HeaderTemplate>Row Number</HeaderTemplate>
<ItemTemplate><%# Eval("Line Number") %></ItemTemplate>
<ItemStyle CssClass="TableItemStyleRowNo" />
</asp:TemplateColumn>
</Columns>
<HeaderStyle CssClass="TableHeaderStyle" />
<ItemStyle CssClass="TableItemStyle" />
<AlternatingItemStyle CssClass="TableAlternatingItemStyle" />
</asp:DataGrid>
我的問題是:首先,如何將AlternatingItemSyle應用於特定的TemplateColumn?其次,爲什麼在TemplateColumn中支持ItemStyle,但AlternatingItemStyle不是?
這是問題的一部分。我最初只想將一個ItemStyle和AlternatingItemStyle應用於整個數據網格。但是,我現在想讓所有列都具有除1之外的那些樣式,我只想改變ItemStyle而不是AlternatingItemStyle。因此,在TemplateColumn中添加ItemStyle即可,但現在AlternatingItemSytle不適用。 – sr28
對不起,奇怪的是你的答案只有一部分出現了。我會嘗試你的代碼,並讓你知道我如何繼續。 – sr28
這工作(雖然它是細胞[2])。謝謝!似乎很奇怪,你不能在列中應用AlternatingItemStyles,但你可以使用ItemStyle。 – sr28