【问题标题】:GridMvc render column based on if conditionGridMvc 根据 if 条件渲染列
【发布时间】:2015-05-14 05:46:46
【问题描述】:

我正在尝试根据 gridmvc 中的条件呈现列,如下所示:

@model IEnumerable< BasicSuprema.Models.BioUserModel >
@using GridMvc.Html

@helper CustomRenderingOfColumn(BasicSuprema.Models.BioUserModel users)
{
    if (users.cardType == 0)
    {
        <span class="label label-success">Normal</span>
    }
    else if(users.cardType == 1)
    {
        <span class="label label-important">ByPass</span>
    }
    else
    {

    }
}
  @Html.Grid(Model).Named("UsersGrid").Columns(columns =>
                    {
                        columns.Add(c => c.ID).Titled("ID");
                        columns.Add(c => c.cardType).Titled("Card Type")
                        .RenderValueAs(c => c.CustomRenderingOfColumn(c));

                    }).WithPaging(10).Sortable(true)

我得到一个编译错误

'BasicSuprema.Models.BioUserModel' does not contain a definition for 'CustomRenderingOfColumn' and no extension method 'CustomRenderingOfColumn' accepting a first argument of type 'BasicSuprema.Models.BioUserModel' could be found 

这个错误在线.RenderValueAs(c =&gt; c.CustomRenderingOfColumn(c)); 我已经尝试过SO的解决方案

1:https://stackoverflow.com/a/24415952/2083526“添加列时的GridMvc和if语句”以及这个gridmvc.codeplex.com

【问题讨论】:

    标签: c# asp.net-mvc-4 gridview


    【解决方案1】:

    这将是一个迟到的答案,但我最近根据 if 条件使用了RenderValueAs。在您的情况下,错误非常清楚,表明 BasicSuprema.Models.BioUserModel 没有方法定义为 CustomRenderingOfColumn

    所以,你应该改变它;

    .RenderValueAs(c => c.CustomRenderingOfColumn(c));
    

    .RenderValueAs(c => CustomRenderingOfColumn(c));
    

    因为CustomRenderingOfColumn 不是您的模型的一部分。 (BioUserModel)

    完整的代码如下;

    @Html.Grid(Model).Named("UsersGrid").Columns(columns =>
            {
                columns.Add(c => c.ID).Titled("ID");
                columns.Add(c => c.cardType).Titled("Card Type")
                .RenderValueAs(c => CustomRenderingOfColumn(c));
    
            }).WithPaging(10).Sortable(true)
    

    【讨论】:

      猜你喜欢
      • 2014-10-05
      • 2020-08-22
      • 2021-07-10
      • 2017-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 2018-04-21
      相关资源
      最近更新 更多