【问题标题】:Adding dynamic class to Webgrid column from model property从模型属性向 Webgrid 列添加动态类
【发布时间】:2013-07-22 18:49:06
【问题描述】:

我有一个包含许多列的 Webgrid。 其中一列用于截止日期。 我需要根据条件更改每个条目的颜色。 根据条件,我在视图模型中添加了一个名为“ColorCode”的颜色代码属性。 此颜色可以是“红色”、“黄色”或“绿色”。

我的 DueDate 列如下所示:

 taskgrid.Column("DueDate", "Due Date", style: "DueDate", canSort: true, format: (item) => item.DueDate.ToShortDateString()),

这里这个列有“DueDate”类。 我想让它成为 "DueDate red" 、 "DueDate yellow" 或 "DueDate green" 来自“item=>item.ColorCode” 即:

style: "DueDate" + item=>item.ColorCode

【问题讨论】:

    标签: asp.net-mvc dynamic webgrid


    【解决方案1】:

    WebGrid 助手不支持这个。一种可能的解决方法是在 <td> 上而不是在里面的项目上应用样式:

    taskgrid.Column(
        "DueDate", 
        "Due Date", 
        canSort: true, 
        format: 
            @<text>
                <div class="DueDate @item.ColorCode">
                    @item.DueDate.ToShortDateString()
                </div>
            </text>
    ),
    

    其他可能的hacks涉及使用javascript将生成的类从内部&lt;div&gt;移动到父&lt;td&gt;,如果你绝对有必要拥有这个类应用于&lt;td&gt;

    【讨论】:

      【解决方案2】:

      上面的代码修改如下

      taskgrid.Column("DueDate",header:"Due Date",format: @<text><div class="@((@item.Approved)?"reject-icon":"approve-icon")">@item.DueDate</div></text>)
      

      【讨论】:

        【解决方案3】:

        尝试以下方法:它对我有用。我在类属性中使用了条件语句。

        class= "@((item.Approved)?"reject-icon":"approve-icon")"
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-06-27
          • 2022-01-17
          • 2021-12-18
          • 2015-08-28
          • 2011-06-23
          • 1970-01-01
          相关资源
          最近更新 更多