我使用SQL查询填充了DataTable
。然后我用GridView
填充DataTable
。
DataTable table = new DataTable();
table.Load(reader);
gvAktivne.DataSource = table;
gvAktivne.DataBind();
这很好但现在我想要隐藏第一列。当我添加这个:
gvAktivne.Columns[0].Visible = false;
我收到IndexOutOfRange
个例外。
有人知道如何解决这个问题吗?
答案 0 :(得分:2)
这可能对您有用:
DataTable data;
data.Columns[0].ColumnMapping = MappingType.Hidden;
答案 1 :(得分:1)
根据问题陈述,您显示AutoGenerateColumns
设置为true
。当您想要隐藏列时,这将成为问题。您需要确保在DataBind()
之后发出代码,我会在OnPreRender
中执行此操作。
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
gvAktivne.Columns[0].Visible = false;
}
答案 2 :(得分:0)
试试这个:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Cells[0].Visible = false;
}