Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用GridView'隐藏GridView列;s数据字段_C#_Telerik Grid - Fatal编程技术网

C# 使用GridView'隐藏GridView列;s数据字段

C# 使用GridView'隐藏GridView列;s数据字段,c#,telerik-grid,C#,Telerik Grid,我有一个gridview,我想用gridview的数据字段隐藏一些列。我是说 我通常使用GridView1.Columns[0]。Visible=false;它是有效的。但对于大网格视图来说,这很复杂。是否有一种方法可以使用asp.net gridview的数据字段来完成此操作。下面是telerik radgrid的方法 RadGrid.MasterTableView.GetColumn("ID").Visible = false; ("ID" --> datafield of grid)

我有一个gridview,我想用gridview的数据字段隐藏一些列。我是说 我通常使用GridView1.Columns[0]。Visible=false;它是有效的。但对于大网格视图来说,这很复杂。是否有一种方法可以使用asp.net gridview的数据字段来完成此操作。下面是telerik radgrid的方法

RadGrid.MasterTableView.GetColumn("ID").Visible = false; ("ID" --> datafield of grid)

为更新的问题编辑

在ASP.NET GridView中:

private int GetColumnIndexByName(GridView grid, string name)
{
    foreach (DataControlField col in grid.Columns)
    {
        if (col.HeaderText.ToLower().Trim() == name.ToLower().Trim())
        {
            return grid.Columns.IndexOf(col);
        }
    }

    return -1;
}
然后使用该辅助功能设置可见性:

int column = GetColumnIndexByName(GridView1, "ID")
if ( column != -1 )
{
    GridView1.Columns[0].Visible = false
}
资料来源:

在Telerik RadGrid中

服务器端:

protected void gvCktMap_PreRender(object sender, EventArgs e) 
{ 
    gvCktMap.MasterTableView.GetColumn("sid").Visible = false;  
    gvCktMap.MasterTableView.GetColumn("customername").Visible = false; 
    gvCktMap.MasterTableView.GetColumn("marketname").Visible = false; 
    gvCktMap.Rebind(); 
} 
资料来源:

客户端:

<script type="text/javascript" language="javascript"> 
function Button1_Click() 
{ 
    var radGrid = $find('<%= RadGrid1.ClientID %>'); 
    var table = radGrid.get_masterTableView(); 
    var column = table.getColumnByUniqueName("cbDiscontinued"); 
    table.hideColumn(column.get_element().cellIndex); 
} 

功能按钮1\u单击()
{ 
var radGrid=$find(“”);
var table=radGrid.get_masterTableView();
var column=table.getColumnByUniqueName(“cbDiscontinued”);
table.hideColumn(column.get_元素().cellIndex);
} 


来源:

谢谢你的帮助。事实上,我看过那个链接,但我正在寻找一个像radgrid一样的直接使用。最初的问题有点误导。更新了答案,包括Telerik RadGrid。实际上,最初的问题是我问的。但是有人改变了。我又更新了一次。你的第一个答案是可以的,但我需要一个直接使用。我的意思是,在telerik中,我们可以使用-->radgrid1.MasterTableView.GetColumn(“ID”).Visible=false;--但是我想我们没有类似的asp.net