在 webgrid 中动态显示/隐藏列标题

Posted

技术标签:

【中文标题】在 webgrid 中动态显示/隐藏列标题【英文标题】:Show/Hide Column header in webgrid dynamically 【发布时间】:2013-06-28 11:50:08 【问题描述】:

我正在使用 WebGrid 显示动态选择的表列我想隐藏未选择的列。如何动态隐藏列标题?

我正在使用关注 webgrid。

    <div>   
    @    
    var grid = new WebGrid(Model.oTravelReadyEntities);
    grid.Pager(WebGridPagerModes.NextPrevious);
    @grid.Gethtml(tableStyle: "WebGrid",
    headerStyle: "Header",
    alternatingRowStyle: "alt",
    columns: grid.Columns(


    grid.Column("Var_AssoId", "Var_AssoId", canSort: true, format: @<text>            
    @if(item.Var_AssoId == 0)@Html.Hidden("Var_AssoId", "Var_AssoId");        
                                                                                                   
    else @item.Var_AssoId</text>),

    grid.Column("Var_AssociateName", "Var_AssociateName", format: @<text>
    @if (item.Var_AssociateName == null)
    @Html.Hidden("Var_AssociateName", "Var_AssociateName")
    else
    @item.Var_AssociateName</text>),


    grid.Column("Var_Grade", "Var_Grade", format: @<text>
    @if (item.Var_Grade == null)
    @Html.Hidden("Var_Grade", "Var_Grade")
    else
    @item.Var_Grade</text>),

    grid.Column("Char_VirtualPool", "Char_VirtualPool", format: @<text>
    @if (item.Char_VirtualPool == null)
    @Html.Hidden("Char_VirtualPool", "Char_VirtualPool")
    else
    @item.Char_VirtualPool</text>),

    grid.Column("Var_VirtualPoolCatagory", "Var_VirtualPoolCatagory", format: @<text>
    @if (item.Var_VirtualPoolCatagory == null)
    @Html.Hidden("Var_VirtualPoolCatagory", "Var_VirtualPoolCatagory")
    else
    @item.Var_VirtualPoolCatagory</text>),

    grid.Column("Char_VisaUtilization", "Char_VisaUtilization", format: @<text>
    @if (item.Char_VisaUtilization == null)
    @Html.Hidden("Char_VisaUtilization", "Char_VisaUtilization")
    else@item.Char_VisaUtilization</text>),

    grid.Column("Var_Deparment", "Var_Deparment", format: @<text>
    @if (item.Var_Deparment == null)@Html.Hidden("Var_Deparment", "Var_Deparment")
    else@item.Var_Deparment</text>),

    grid.Column("Var_Vertical", "Var_Vertical", format: @<text>
     @if (item.Var_Vertical == null)@Html.Hidden("Var_Vertical", "Var_Vertical")
    else@item.Var_Vertical</text>),

    grid.Column("Var_AccountName", "Var_AccountName", format: 
    @<text>@if (item.Var_AccountName == null)
    @Html.Hidden  ("Var_AccountName", "Var_AccountName")
    else@item.Var_AccountName</text>),

    </div>

我想在某些条件下隐藏Column header。如何使用条件语句隐藏Column header?

【问题讨论】:

你为此做了什么? 我在格式中给出了 if 条件。我想隐藏相应的列标题。如何给出条件语句来隐藏包含其标题的网格列? 【参考方案1】:

这是有条件地显示/隐藏我认为有用的 webgrid 列的一种方法:MVC 3 Webgrid - how do you hide columns you do not want to be visible?

【讨论】:

以上是关于在 webgrid 中动态显示/隐藏列标题的主要内容,如果未能解决你的问题,请参考以下文章

如何动态的隐藏grid的一列

如何在 webgrid handsontable 中基于 select 显示列中的数据

用户动态显示隐藏列,可排序

若依vue实现动态表格,可动态查询条件,控制列的显示隐藏及操作权限

若依vue实现动态表格,可动态控制列的显示隐藏及操作权限

Vue动态控制表格列的显示和隐藏