动态地将类添加到ASP.NET WebForm

时间:2018-02-15 09:59:10

标签: c# asp.net webforms

我正在尝试动态地将css类分配给trItemTemplate中的asp:ListView。如果支持模型中的布尔值等于true,我想应用此类。在这种情况下,属性为BackingModelProperty

this answer中,Visible属性是根据OP尝试在asp:ListView中显示的数据动态设置的。

到目前为止,我已经尝试过:

<ItemTemplate>
    <tr runat="server" class="<%# (((bool)Eval("BackingModelProperty")) == true) ? 'test-css-class' : null %>">
    ...
</ItemTemplate>

然而,我收到错误

  

无法确定条件表达式的类型,因为char<null>之间没有隐式转换

因此,我尝试使用CssClass属性而不是class,这也不起作用。我已经尝试转换为整数并检查值是否为== 1。这也失败并出现相同的错误消息。

有人可以建议我哪里出错吗?

1 个答案:

答案 0 :(得分:2)

删除runat=server(不要使用'

<tr class="<%# (((bool)Eval("BackingModelProperty")) == true) ? "test-css-class" : null %>">

确保BackingModelProperty是,或者可以转换为布尔值。