【问题标题】:How to open form from module (referenced project)如何从模块打开表单(引用项目)
【发布时间】:2019-01-28 07:56:33
【问题描述】:

我的解决方案中有 3 个项目和一个作为 MDI 容器的项目,用于在此表单中打开表单。 我使用此代码打开表单:

Dim form1 As New Purchasing.POlist
    Foform1.MdiParent = Me
    Foform1.Show()

效果很好,但我在解决方案中添加了一个新项目。该项目是从一个模块或没有应用程序框架开始的。

问题:如何在我的解决方案中以 MDI Child 的身份打开这种项目? 如果我使用上面的代码,它只能让我选择该项目中的表单或类,而不是一个模块来启动它。

【问题讨论】:

  • 没有任何变化。您指定要创建实例的类型,将父级分配给其MdiParent 属性,然后调用Show。无论您在哪里称呼它,它都完全相同。您在项目中使用 .NET Framework 类库中的所有类型是否有任何问题,即使没有在其中声明 wy?当然不是。您需要在该代码中更改的唯一一件事是您引用父表单的方式。如果代码实际上不在父窗体中,那么显然Me 不引用父窗体,所以使用一个变量。
  • 如何使用引用父表单的变量?我想使用父表单在另一个项目中打开另一个表单,但是该项目从一个模块开始,没有应用程序框架..
  • 如何使用变量来引用任何东西?您将事物分配给变量。您必须首先打开父表单,以便将其分配给变量。停止[试图让它变得困难。你知道变量是如何工作的。您正在为您发布的代码中的一个表单分配一个表单。为什么不同的形式会有所不同?
  • 当我从模块中打开该项目作为独立解决方案(没有任何其他项目)时,它运行良好..但是当我更改为应用程序框架,并选择启动形式..我得到一个错误.当我改回没有应用程序框架并且没有启动表单(模块作为启动)的情况下再次启动它的工作..此外,我需要将此项目引用到我的MDI项目..我需要从一个模块启动,因为如果从表单开始,它不起作用
  • 换句话说,我试图在 MDI 中打开表单..该项目从模块开始,我不知道如何添加变量以从模块打开它

标签: vb.net module


【解决方案1】:

不要使用ME 作为父容器,因为您将模块分配为您无法做到的父容器... 试试这个:

'this block of code below is from module
public sub openForm1()
    Dim form1 As New Purchasing
    form1 .MdiParent = frm_Main_Menu 'your parent container here
    form1 .Show()
end sub

'this code below is from form
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    openForm1()
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-20
    • 2016-12-22
    • 1970-01-01
    • 1970-01-01
    • 2018-03-25
    • 1970-01-01
    • 2016-01-06
    • 2012-06-29
    相关资源
    最近更新 更多