首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MVC中的KENDOUI网格:有没有办法隐藏某些列上的过滤器?

MVC中的KENDOUI网格:有没有办法隐藏某些列上的过滤器?
EN

Stack Overflow用户
提问于 2013-01-09 04:15:35
回答 5查看 14K关注 0票数 8

我在MVC.NET中使用了KENDO UI网格。

网格配置为显示每个列的列筛选器。

但是,我的一些列是不可过滤的,所以我想隐藏过滤器。

有没有一种方法可以从C#端配置?(不使用CSS或JS)。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-01-09 06:13:38

在你的代码中,你可能有类似这样的东西:

代码语言:javascript
运行
复制
<asp:Content ContentPlaceHolderID="MainContent" runat="server">
<%: Html.Kendo().Grid(Model)
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.ProductID).Groupable(false);
        columns.Bound(p => p.ProductName);
        columns.Bound(p => p.UnitPrice);
        columns.Bound(p => p.UnitsInStock);
    })
    .Groupable()
    .Pageable()
    .Sortable()
    .Scrollable()
    .Filterable()
    .DataSource(dataSource => dataSource
        .Ajax()
        .Read(read => read.Action("Products_Read", "Grid"))
    )
%>
</asp:Content>

如果你不想过滤ProductID列,你应该说:

代码语言:javascript
运行
复制
<asp:Content ContentPlaceHolderID="MainContent" runat="server">
<%: Html.Kendo().Grid(Model)
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.ProductID).Groupable(false).Filterable(false);
        columns.Bound(p => p.ProductName);
        columns.Bound(p => p.UnitPrice);
        columns.Bound(p => p.UnitsInStock);
    })
    .Groupable()
    .Pageable()
    .Sortable()
    .Scrollable()
    .Filterable()
    .DataSource(dataSource => dataSource
        .Ajax()
        .Read(read => read.Action("Products_Read", "Grid"))
    )
%>
</asp:Content>
票数 16
EN

Stack Overflow用户

发布于 2013-01-26 02:14:04

如果没有设置列,则可以在网格初始化后隐藏筛选器按钮,例如在databound事件中。以下是一种方法,隐藏特定字段上的过滤器按钮:

代码语言:javascript
运行
复制
$("#MyGrid").find(".k-header[data-field='Pct_positive']").find(".k-grid-filter").css("visibility","hidden");

为了把它们都藏起来。

代码语言:javascript
运行
复制
$("#MyGrid").find(".k-header").find(".k-grid-filter").css("visibility","hidden");
票数 3
EN

Stack Overflow用户

发布于 2013-01-09 04:25:20

据我所知,对于那些不想过滤的列,您必须能够将columns.filterable配置属性设置为'false‘,因为它缺省为'true’(参见文档:columns.filterable)

您是否可以从C#端完成此操作将取决于如何在您的代码中初始化Kendo Grid。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14223280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档