2011-04-04 100 views
0
Dim Application = From AL In db.AnnualLeave _ 
        Where AL.Approval <> True _ 
        Select LeaveID, EmpID, Name 

    GridView3.DataSource = Application 
    GridView3.DataBind() 

调用后设置未绑定的GridView列于无形'GridView3.DataBind(),为什么我仍然得到我怎么能在代码

指数超出范围。必须是非负数且小于集合的大小。参数名称:索引。

在这行代码GridView3.Columns(1).Visible = False但网格有行和超过2列。我在这里发现了一个关于类似问题的线程http://forums.asp.net/t/1025678.aspx/1

请注意,Gridview列有不是已在设计时定义。 `

+0

GridView3.Columns(1)。可见= FALSE;你在做什么?你可以发布完整的代码,你在做什么,并获得错误 – 2011-04-04 13:47:30

+0

在GridView3_DataBound,GridView3_RowDataBound和Page_Load – StackTrace 2011-04-04 14:00:14

+0

都失败了,我有一个模板列,我已经在设计时添加到同一个gridview。我能够在上述任何事件中成功隐藏此模板列 – StackTrace 2011-04-04 14:02:38

回答

0

您需要注意将代码放入asp.net中的位置。如果你在错误的时间把错误的地方放在那个代码中,那么是的,它会抛出一个错误。

我建议上ASP.NET Page Lifecyle阅读了