和隐藏没关系 
Dim chkDelete2 As CheckBox=oDataGridItem1.FindControl("SubDelCheckbox")Dim ss As String = oDataGridItem1.Cells(0).Text
你试试把这个ss response.write出来看看 到底有没有值

解决方案 »

  1.   

    不要急
    试着把它转换成模板列
    你的oDataGridItem1.Cells(0).Text
    改成
    ((Label)oDataGridItem1.Cells(0).findcontrols("Label1")).Text
    好久没有用vb.net了,不知道这语法对不对
      

  2.   

    Private Sub dgshow_DeleteCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dgshow.DeleteCommand
            myconn.Open()        cmddelete.Parameters("@id").Value = e.Item.Cells(0).Text
            cmddelete.ExecuteNonQuery()        myconn.Close()        dgshowall()//显示dg
        End Sub
      

  3.   

    先response.write(oDataGridItem1.Cells(0).Text)
    看看有没有值
    然后再判断问题
      

  4.   

    chkDelete2 = oDataGridItem1.FindControl("SubDelCheckbox")
                If chkDelete2.Checked = True Then
    -------------------------------------------------------------------------
    我记得chkDelete2 = oDataGridItem1.FindControl("SubDelCheckbox")这句是不是应改用CType转换一下类型为Checkbox。很久没用vb.net了,不太确定。
    你调试一下,确定程序走到if里了吗?