gpt4 book ai didi

asp.net - 在运行时添加数据时如何隐藏一列gridview?

转载 作者:行者123 更新时间:2023-12-04 04:53:17 25 4
gpt4 key购买 nike

我这样做是为了将数据添加到 gridview

Dim dSource As New SqlDataSource
dSource.ConnectionString = MyConnectionString
dSource.SelectCommand = "select..."

GridView1.DataSource = dSource
GridView1.DataBind()

然后我想隐藏第一列
GridView1.columns(0).visible=false

并且服务器抛出异常:
ArgumentOutOfRangeException.

最佳答案

GridView.Columns.Count当您设置 AutoGenerateColumns="true" 时将为 0在您的 GridView 中。

您可以尝试显式声明您的列并设置 AutoGenerateColumns="false" ,或者您可以尝试在代码隐藏中使用它:
GridView.Rows[0].Cells.Count
绑定(bind)数据后获取列数,或者:

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

使用 GridView 的 RowDataBound 事件将列设置为不可见。

编辑 1

您可以使用 bound field如下
<asp:DataGrid ID="DefaultGrid" Runat="server" AutoGenerateColumns=False>
<Columns>
<asp:BoundColumn DataField="Index" HeaderText="Header">
</asp:BoundColumn>
</Columns>
</asp:DataGrid>

关于asp.net - 在运行时添加数据时如何隐藏一列gridview?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17106311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com