根据数据库中的单元格值更改表行中的颜色

时间:2019-11-15 09:57:29

标签: c# asp.net-core

我正在做一个历史交易表。在我的事务数据库中,有一个名为QuantityChange的列。值可以为负或正。

我想将行颜色设置为红色(如果它是负值),而将绿色设置为正(或零)。

我认为,我可以做类似if(@item.Quantity.StartWith(-))的事情。但是 asp.net-core 中没有类似的功能。

       @foreach (var item in Model)
        {
    <tr>
        <td>
            @if(bla bla bla)

            @Html.DisplayFor(modelItem => item.QuantityChange)
        </td>
    </tr>

什么是最好的解决方案?

2 个答案:

答案 0 :(得分:1)

假设item.Quantity为整型或双精度

@if (item.Quantity > 0)
{
    // Green
    @Html.Label(item.QuantityChange, new { style = "color:#00ff00" })
}
else
{
    // Red
    @Html.Label(item.QuantityChange, new { style = "color:#ff0000" })
}

答案 1 :(得分:0)

假设您有一个像这样的模型:

public class Product
{
    public short QuantityChange { get; set; }
}

当我使用下面的代码来设置类属性时,它将起作用:

@foreach (var item in Model)
{
    <tr class="@(item.QuantityChange < 0 ? "red" : "green")">
        <td>
            @Html.DisplayFor(modelItem => item.QuantityChange)
        </td>

        <td>
          test
        </td>
    </tr>
}
<style>
.red{
    background-color:red;
}
.green{
    background-color:green;
}
</style>

结果: enter image description here