如何隐藏 GridView Column[1]?

How to hide GridView Coumn[1]?

我正在尝试隐藏 gridview 列[1]。但它显示错误

Index was out of range. Must be non-negative and less than the size of
the collection parameter name:index.

我该如何执行此操作。我在互联网上冲浪了很多,但没有找到合适的解决方案。我提到的代码 below.It 是一个基于网络的平台。

protected void Page_Load(object sender, EventArgs e)
 {
   if (!IsPostBack)
     {
      qry = "select Id,Name,Age,Sex,Dob from Sample where Code='123';
      dr = conn.query(qry);
      GridView1.DataSource = dr;
      GridView1.DataBind();
      GridView1.Columns[1].Visible = false;
      }
 }

以同样的方式隐藏列[0]。 我的网格视图是

 <asp:GridView ID="GridView1" HorizontalAlign="Center" runat="server" 
      onrowcommand="GridView1_RowCommand">
    <Columns>
       <asp:TemplateField>
          <ItemTemplate>
             <asp:LinkButton ID="LinkButton1" runat="server"
                   CommandArgument='<%# Eval("ID")%>'>Delete</asp:LinkButton>
             </ItemTemplate>
         </asp:TemplateField>
    </Columns>
</asp:GridView>

您需要使用 RowDataBound 来隐藏列。您可以使用下面的代码

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

关于 SO 的类似问题

  1. GridView Hide Column by code