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