如何将Windows窗体应用程序从C#转换为VB?

时间:2010-03-17 10:35:18

标签: c# vb.net winforms

我一直在转换各种其他东西,类,接口,ASP.NET MVC应用程序和WPF应用程序,但我很难过如何转换Windows窗体应用程序,因为整个结构似乎是不同的。有没有人对如何解决这个问题有任何建议?

我基本上看到你有两个文件,Form1.cs和Form1.Designer.cs。直接将它们从C#转换为VB不起作用,因为Visual Basic的工作方式有些错综复杂。我认为你/可能/能够以这种方式转换Form1.cs,因为它只是一个构造函数和事件处理程序,但设计器包含对控件等的引用,我不知道如何去做。< / p>

我正在使用Visual Studio 2010 Beta 2。

4 个答案:

答案 0 :(得分:1)

我的方法是在VB中创建一个新表单添加一些表单并添加事件并查看从那里生成的VB,你将能够看到每个元素[control / event / propertyset]是如何在C#中完成的和VB。从那里开始,从c#转换到VB.net应该很简单。这将为我提供更多的设计,可以应对转换后的类以及运行时。

答案 1 :(得分:1)

我要做的是在VB中手动创建一个与C#中的窗体同名的新窗体,然后在设计视图中打开C#窗体,确保选择了窗体上的所有控件,然后将它们复制并粘贴到了VB中的空白新表格。然后,使用位于以下位置的Telerik Free转换器翻译了后面的代码:converter.telerik.com。如果您有一个需要转换的庞大解决方案,我肯定会很麻烦,但就我而言,这是一个很小的解决方案,效果很好。

答案 2 :(得分:0)

Redgate.NET Reflector做得很好。

答案 3 :(得分:0)

这两个文件都以部分类的形式包含Form1类的一部分。由于VB.Net也支持部分类,我在这里看不到问题。

设计器文件包含Windows窗体设计器生成的所有代码,Form1.cs文件是所有自定义代码所在的位置(事件处理等)。

因此,在转换这两个文件之后,您应该检查在Forms.cs文件中对控件的所有引用是否都可以在designer.cs文件中使用。