将Kendo.Grid中的过滤器更改为使用文本而不是与列关联的绑定值

时间:2015-07-08 04:54:42

标签: kendo-ui kendo-grid kendo-asp.net-mvc

在我的Kendo.Grid中我有:

columns.Bound(c => c.FORMRIGHTTYPEID).Width("25").Title("Form Right").HtmlAttributes(new { @class = "text-align: center;" })
  .Template(@<text>
    @if (item.FORMRIGHTTYPEID != null)
    {
      @DisplayRight((long)item.FORMRIGHTTYPEID)
    }
    </text>);

请注意,我正在显示与FORMRIGHTTYPEID数值相关联的文本值。我已将网格设为“可过滤”:

@(Html.Kendo().Grid<EPIMS.Models.FORMRIGHTS>()

...

...

.Scrollable()
.Groupable()
.Sortable()
.Filterable(filterable => filterable
            .Extra(false)
            .Operators(operators => operators
            .ForString(str => str.Clear()
            .Contains("Contains")
)))
.Pageable(pageable => pageable
.Refresh(true)
.PageSizes(true)
.ButtonCount(5))
.BindTo(Model))

我的问题是Filter选项显示“显示值为:等于”的项目,但不允许我输入文本。而是(和预期的那样),值必须是数字,因为列绑定到数值字段。

是否可以自定义过滤器?

由于

1 个答案:

答案 0 :(得分:0)

实现了一个存储过程,该存储过程返回与数值相关联的ID和DESCRIPTION字段。基本上,@ mmillican建议做什么(即改变视图模型)。