C# .net listView单元格属性

C# .net listView单元格属性,c#,asp.net,listview,C#,Asp.net,Listview,我有一个列表视图,其值类似于: 1 0 0 0 1 0 1 1 1 0 1 0 1 1 1 0 0 1 0 1 其中,每个条目都是listview中的一个单元格/列 如何检查单元格的值是否为1,然后将列背景颜色更改为其他颜色?使用Eval和三元运算符: <style type="text/css"> .Value1 { font: 10pt Verdana; font-weight:700; color: Green;

我有一个列表视图,其值类似于:

1 0 0 0 1
0 1 1 1 0
1 0 1 1 1
0 0 1 0 1
其中,每个条目都是listview中的一个单元格/列


如何检查单元格的值是否为1,然后将列背景颜色更改为其他颜色?

使用
Eval
和三元运算符:

<style type="text/css">
    .Value1
    { 
       font: 10pt Verdana; 
       font-weight:700;
       color: Green;
    }

    .NotValue1
    { 
       font: 15pt Times; 
       font-weight:250;
       color: Blue;
    }
</style>

<asp:ListView runat="server" ID="ListView1" >
  <LayoutTemplate>
    <table runat="server" id="table1" >
      <tr runat="server" id="itemPlaceholder" ></tr>
    </table>
  </LayoutTemplate>
  <ItemTemplate>
    <tr runat="server">
      <td runat="server" CssClass='<%# Convert.ToInt32(Eval("Value"))==1 ? "Value1" : "NotValue1" %>'>
        <%-- Data-bound content. --%>
        <asp:Label ID="LblValue" runat="server" 
          Text='<%#Eval("Value") %>' />
      </td>
    </tr>
  </ItemTemplate>
</asp:ListView>

.价值1
{ 
字体:10pt Verdana;
字号:700;
颜色:绿色;
}
.NotValue1
{ 
字体:15分次;
字号:250;
颜色:蓝色;
}

(未测试)

我得到:运算符“==”不能应用于来自above@sd_dracula:然后改用(如果它是
int
)。相应地编辑了我的答案。谢谢,我已经运行了它,但是我没有看到文本格式的任何变化。我的朋友:知道为什么吗?在aspx的范围内,对吗?@sd_dracula:你有没有查看页面的html源代码,看看应用了哪个css类,如果有的话?例如,您可以使用firebug检查css。如果我将bgcolor设置为,它将显示新的bgcolor。也许逻辑不是开火?如果值为=1,我只想更改bgcolor