繁体   English   中英

将vb.net表单添加到C#项目

[英]Add vb.net forms to c# project

在vb.net中,很高兴拥有Login FormSplash ScreenDialog Form 可通过Visual Studio的“ Project >“ Add New Item...对话框使用它们。

有没有一种方法可以将这些预构建的表单添加到ac#项目中,而不会跳过箍呢?

如果需要,可以在vb.net项目中重新实现或创建表单,然后从主(c#)项目中实例化这些表单,但是如果有一个简单的解决方法,那将是很多工作。


vb.net项目


C#项目

我认为无法直接在C#中使用VB.NET表单。 但是您可以在VB.NET表单周围放置一个包装器,然后将其编译为DLL。 然后,您可以使用C#应用程序中的DLL。 这里给出类似的建议(反之亦然)。

编辑:实际上,您不需要包装。 您可以直接使用的形式从项目如图所示这里

您可以通过(手动)转换C:\\ Program Files(x86)\\ Microsoft Visual Studio 10.0 \\ Common7 \\ IDE \\ ItemTemplates \\ VisualBasic \\ Windows Forms \\ 1033中的.zip文件来创建自己的VB模板的C#版本。

  1. 复制并解压缩所需模板
  2. 手动将VB代码转换为C#代码
  3. 修改并保存.vstemplate XML文件(另请参见架构参考)
  4. 将文件压缩为新的.zip
  5. 将C#.zip放入C:\\ Program Files(x86)\\ Microsoft Visual Studio 10.0 \\ Common7 \\ IDE \\ ItemTemplates \\ CSharp \\ Windows Forms \\ 1033

不,您不能在一个项目中组合多种语言。 只需为您的VB.NET表单库创建一个单独的项目。

您不能在同一project混合使用VB和C#,但是可以将一个C#项目和一个VB.NET项目组合/组合到同一VS solution

在这种情况下,您可以拥有一个用vb.net编写的类库,其中包含您的特殊表单,以及一个用C#编写的windows application ,该windows application引用另一个表单并使用这些表单,但前提是您要公开这些表单。

我唯一想到的就是将应用程序的主要项目变成VB项目。 那是允许您使用My.Application.SplashScreen属性的唯一方法,并且您只能在应用程序的VB部分内使用它(尝试从C#内部使用Application.SplashScreen不会进行编译)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM