Closed. This question needs details or clarity。它当前不接受答案。                                                                                                                                                                                                                                                                                                                        想改善这个问题吗?添加详细信息并通过editing this post阐明问题。                                                3年前关闭。                                                                                                                    我有多个TemplateFields,其中每个都包含两个我想根据代码隐藏文件中的布尔CssClass更改的isGov实例。正如您在下面看到的,我在.aspx文件中有一个if / else语句,使用与我想用来更改。但是,使用相同的概念无效。我想知道正确的方法是什么?这是当前的代码,我要更改的两个label是最后两个:<asp:TemplateField HeaderText="SUN"> <footertemplate> <asp:Label ID="lblD1F" runat="server" ForeColor="white" Width="35px" Text="<%# GetTotal(0).ToString() %>" /> </footertemplate> <headertemplate> <asp:Label ID="lblD1H" runat="server" CssClass="hdr_Day" > <% if (isGov) { %> MON <% } else { %> SUN <% } %> </asp:Label><br /> <asp:Label ID="lblD1D" runat="server" CssClass="hdr_Date" Text='<%# _displayDate.ToString("MM/dd") %>'></asp:Label> </headertemplate> <itemtemplate> <anthem:TextBox id="tbDay1" runat="server" Text='<%# Bind("Day1") %>' ---> This one CssClass="tbWeekEnd" AutoCallBack="true" /> <asp:Label ID="lblDay1" runat="server" Visible="false" Text='<%# Bind("Day1") %>'></asp:Label> </itemtemplate> <itemstyle cssclass="cell_weekend" /> <--- And this one </asp:TemplateField>我也尝试过:CssClass='<%# isGov ? "cell_weekday" : "cell_weekend" %>'似乎布尔headertemplate未被识别。当我使用boolean语句时,Intellisense会选择它,但在尝试更改isGov时却不会。编辑:基本上发生了什么,一个网格视图包含一些列,其中14列的标题列中有一个日期。日期根据布尔值CssClass从星期日或星期一开始,而CssClass突出显示周末。因此,我也想根据该布尔值更改CssClass,但仅​​适用于属于周末单元格的单元格。 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 这里的问题是ItemStyle元素无法用数据绑定值初始化。正确的方法是处理GridView的RowDataBound事件并在那里设置类:protected void GridViewID_RowDataBound(object sender, GridViewRowEventArgs e){ if (e.Row.RowType == DataControlRowType.DataRow) { // if you want the whole row class e.Row.CssClass = isGov ? "cell_weekday" : "cell_weekend"; // if you want specific cell class e.Row.Cells[2] = isGov ? "cell_weekday" : "cell_weekend"; }}单元格索引基于0,并且对应于标记中定义的列顺序。至于TextBox的类,它应该可以很好地以<%# isGov ? ...的方式工作。但是不要指望intellisense可以在这里提供帮助-请注意,您正在用字符串编写代码,因此从IDE的角度来看,这只是一个字符串值(除非最近的VS版本内置了一些很酷的功能,我没听说过)关于c# - 在后面的代码中基于 bool 更改CssClass,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36430317/ (adsbygoogle = window.adsbygoogle || []).push({});
10-10 06:03