【发布时间】:2017-03-20 12:09:37
【问题描述】:
我正在制作一个生成 SQL Server 代码的程序,以便在我的 VB.NET 程序中使用它。
我有第一个表单,其中包含如下图所示的连接:
连接 100% 有效,但在第二种形式中,我有两个 DataGridViews,一个用于表格,一个用于字段。
所以当我点击DataGridView1 的任何表时 => DataGridView2 显示字段:
当我单击DataGridView1 以从Form1 获取ComboBox 的值以在Form2 中使用它时,出现以下错误:
连接服务器失败。
代码:
Dim frm As New Form2
prd.ServerConnection = New ServerConnection(frm.ComboServer.Text) ' here the error
prd.DGVField(MetroGridTables, MetroGridField)
我使用Form1进行连接,Form2进行操作。
【问题讨论】:
-
您是说连接存储在
form1。但是您将frm声明为Form2并尝试从中读取连接。它不仅是错误的形式,而且很可能是空的,因为它是刚刚创建的。由于其令人困惑的性质,我不确定这个问题是重复的。候选人中有stackoverflow.com/q/33765071/11683 和stackoverflow.com/q/22078219/11683。 -
是的,连接存储在form1中,当我尝试使用此代码'prd.ServerConnection = New ServerConnection(frm.ComboServer.Text)从form1调用连接服务器时,问题就在form2中
-
您应该考虑将连接完全存储在表单之外。你让它难以访问。
-
怎么样!!!!你能解释一下吗
标签: vb.net winforms datagridview