如何修复SystemInvalidOperationException错误?

问题描述:

我的代码没有错误,并且工作正常,但如果表单运行,它会弹出一个注释,说明“表单在构造过程中会从导致无限递归的默认实例引用自身。在表单的构造函数中引用使用ME'的表单。我知道注释的含义,但是我的代码来自CLASS,我怎么才能在类中写入ME.DataGridView1。如何修复SystemInvalidOperationException错误?

下面是代码:

Public Function billing_member_data_grid_radiobutton4_checkchanged() 

    MysqlConn.ConnectionString = ServerString 
    Dim dbDataSet As New DataTable 
    Dim SDA As New MySqlDataAdapter 
    Dim bSource As New BindingSource 

    Try 
     MysqlConn.Open() 

     Dim query As String 

     query = "SELECT user_memberid as 'Member ID',user_firstname as 'First Name',user_middlename as 'Middle Name',user_lastname as 'Last Name',user_birthday as 'Birthday',user_age as 'Age',user_address as 'Address',user_contact as 'Contact Number',user_gender as 'Gender' FROM gym.user" 
     COMMAND = New MySqlCommand(query, MysqlConn) 
     SDA.SelectCommand = COMMAND 
     SDA.Fill(dbDataSet) 
     bSource.DataSource = dbDataSet 
     Billing_Member_Data_Grid.DataGridView1.DataSource = bSource 
     SDA.Update(dbDataSet) 

     MysqlConn.Close() 


    Catch ex As Exception 
     MsgBox(ex.Message) 
    Finally 
     MysqlConn.Dispose() 



    End Try 
    Return True 

End Function 
+1

转** Option Strict On **。实现'使用'。使用**参数**。对你来说只是一些指针。 – Bugs

+0

在您的环境中精心设计'连接这两个功能' –

+0

为什么使用子例程等功能? – TonyW

你需要调用READER.Close()后您完成读。

+0

我无法关闭它,因为如果读取5个数据,它会在读取一个数据后关闭。 – Primitive

+2

您有两个不同的读取器,每个读取器都有一个读取方法。读完后应该关闭第一个,然后第二个将在loadtrainer2()中使用。您可以在“End If”之后调用READER.Close(),这将确保所有存在的数据都已被读取。 – obl

不是一个函数的整体思路是有一个输入和输出?你对待他们像子例程

...

回答的问题可以是: -

  1. 添加变量创建一个输出。

  1. 变化1个或两个功能放在子例程...
开始=>