检查Eval中的正负值换颜色

时间:2015-12-05 10:42:35

标签: c# .net if-statement eval

我想在.aspx中更改标签的前景色 我试图比较值是否> 0然后它应该是绿色,如果不是红色

问题出在条件部分 我试图使用int,double,float ..但是非工作 我总是得到Specified cast无效。

这是我的行

<asp:Label ID="TAmtLabel" runat="server" Text='<%# Eval("TAmt", "{0:c}") %>' Font-Size="13pt" Font-Bold="true" ForeColor='<%# (int)Eval("TAmt") > 0 ? "#00C000" : "#C00000" %>' />

1 个答案:

答案 0 :(得分:0)

这是我的方法,希望有所帮助:)

我使用的是CssClass ..而不是ForeColor。

<asp:Label ID="TAmtLabel" runat="server" Text='<%# Eval("TAmt", "{0:c}") %>' Font-Size="13pt" Font-Bold="true" CssClass='<%# Convert.ToDouble(Eval("TAmt")) > 0 ? "less" : "more" %>' />

在你的css中实现类似的东西

    

<style type="text/css">
    .less
    {
        color : #00C000;
    }
    .more
    {
        color : #C00000;
    }
</style>

转换html颜色与此主题一样复杂。convert hex code to color name