在一个解决方案中从 VB 项目调用 C#
Calling a C# from a VB project in one solution
我在一个解决方案中有 2 个项目。
主要是一个VB.net项目,次要是一个C#项目。我想通过单击按钮从 VB.net 项目调用 C# 项目的表单,但我不确定如何调用。
我已经阅读过如果我创建 C# .dll 并引用它是可能的,但我找不到这方面的指南。有人可以一步一步地告诉我如何完成这个吗?
这是一件相当简单易行的事情,也很常见。如果您有多个项目都具有执行相同操作的功能,则可以跨项目保存重复代码。
- 右键单击 VB 项目并单击
Add
-> Reference...
- 按左边的
Projects
节点。
- 现在将鼠标悬停在 C# 项目上并单击出现的复选框。
您现在已经添加了引用。请注意,您不能从 C# 中引用 Vb 项目,因为 Visual Studio 不允许这样做,因为您正在创建 circular reference。
要调用表单显示,您可以执行以下操作。
首先,您需要在新表单的某处进行引用。例如; (OtherProject 是另一个项目的名称,而 FormName 是项目中表单的名称。根据您正在做的事情,您可能希望在启动 VB 应用程序时执行此操作,或者您可能只需要一次。这完全取决于您的设置。
Dim OtherProjectForm as New OtherProject.FormName
完成后,继续
OtherProjectForm.Show()
或者当然,再一次,取决于你在做什么,
OtherProjectForm.ShowDialog()
您还可以访问和 public 表单成员。默认情况下,窗体上的每个控件的访问模式都是 "Friend",这意味着只有属于同一程序集的对象才能访问它们,但如果需要,可以将它们设置为 public。或者你可以只创建与它们交互的方法。
我在一个解决方案中有 2 个项目。
主要是一个VB.net项目,次要是一个C#项目。我想通过单击按钮从 VB.net 项目调用 C# 项目的表单,但我不确定如何调用。
我已经阅读过如果我创建 C# .dll 并引用它是可能的,但我找不到这方面的指南。有人可以一步一步地告诉我如何完成这个吗?
这是一件相当简单易行的事情,也很常见。如果您有多个项目都具有执行相同操作的功能,则可以跨项目保存重复代码。
- 右键单击 VB 项目并单击
Add
->Reference...
- 按左边的
Projects
节点。 - 现在将鼠标悬停在 C# 项目上并单击出现的复选框。
您现在已经添加了引用。请注意,您不能从 C# 中引用 Vb 项目,因为 Visual Studio 不允许这样做,因为您正在创建 circular reference。
要调用表单显示,您可以执行以下操作。
首先,您需要在新表单的某处进行引用。例如; (OtherProject 是另一个项目的名称,而 FormName 是项目中表单的名称。根据您正在做的事情,您可能希望在启动 VB 应用程序时执行此操作,或者您可能只需要一次。这完全取决于您的设置。
Dim OtherProjectForm as New OtherProject.FormName
完成后,继续
OtherProjectForm.Show()
或者当然,再一次,取决于你在做什么,
OtherProjectForm.ShowDialog()
您还可以访问和 public 表单成员。默认情况下,窗体上的每个控件的访问模式都是 "Friend",这意味着只有属于同一程序集的对象才能访问它们,但如果需要,可以将它们设置为 public。或者你可以只创建与它们交互的方法。