如何在数据表中隐藏列

本文关键字:隐藏 数据表 | 更新日期: 2023-09-27 18:26:34

我有DataTable,我使用SQL查询填充了它。然后我用DataTable填充了GridView

DataTable table = new DataTable();
table.Load(reader);
gvAktivne.DataSource = table;
gvAktivne.DataBind();

这很好,但现在我想隐藏第一列。当我添加这个:

gvAktivne.Columns[0].Visible = false;

我得到一个IndexOutOfRange异常。有人知道怎么解决这个问题吗?

如何在数据表中隐藏列

这可能对您有用:

DataTable data;
data.Columns[0].ColumnMapping = MappingType.Hidden;

根据问题陈述,您将AutoGenerateColumns设置为true。当您想要隐藏列时,这将是一个问题。您需要确保在DataBind()之后发出那行代码,我将在OnPreRender中执行。

protected override void OnPreRender(EventArgs e)
{
    base.OnPreRender(e);
    gvAktivne.Columns[0].Visible = false;
}

试试这个:

 protected void  GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
 {
      e.Row.Cells[0].Visible = false;
 }