1

我正在谷歌中搜索这个答案,但我发现它不起作用。我使用 sql 查询填充我的 gridview:

adapter = New SqlDataAdapter("select * from tbl.scanner", con)
adapter.Fill(ds)
tblasset.DataSource = ds.Tables(0)
tblasset.DataBind()

这是我在 gridview 中删除特定列的代码:

tblasset.Columns(1).Visible = False

此代码不起作用。

我在那里的列数是 10。错误是:

Index out of range

为什么会这样?我的代码错了吗?请帮助我,我是 asp.net 的新手

4

1 回答 1

0

这会起作用,如果 GridView 列在设计时已知,您可以将cell(1).Visible属性设置falseGridView.RowCreated Event

Sub tblasset_RowCreated(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
   e.Row.Cells(1).Visible = false;
End Sub

请记住在 aspx 页面中附加事件。

<asp:GridView ID="tblasset" 
              OnRowCreated="tblasset_RowCreated"  
   ..........
于 2013-02-18T06:55:42.293 回答