如何将C#console应用程序转换为Winforms或其他GUI?

时间:2014-05-08 11:11:01

标签: c# winforms user-interface

我已经编写了一个很长的控制台应用程序(超过1000行代码),我希望它有一个GUI。我想知道是否有办法快速将其转换为Winforms或其他GUI?

我在网上看到这篇文章提到了如何将控制台应用程序转换为Winforms,但它并没有帮助:

http://saezndaree.wordpress.com/2009/03/29/how-to-redirect-the-consoles-output-to-a-textbox-in-c/

当我按照那里的说明操作时,我能够在程序中添加Winforms部件。但是当我编译它时,Winforms不包含该程序的Console应用程序组件。我的Form.cs包括Winforms和Program.cs是控制台应用程序部分,其中包含我以前写过的1000行代码。编译它,只运行Form.cs中的部分。 Program.cs部分没有运行。例如,我有很多" Console.Writeline"和" Console.Readline" Program.cs中的部分,但它们在我添加" Form.cs"之后运行。到程序

2 个答案:

答案 0 :(得分:2)

您的计划中不能有两个入口点。最好将1000行代码移动到一个单独的类中,这样就可以灵活地从控制台或winforms运行(取决于哪一个设置为启动项目)

答案 1 :(得分:2)

我建议将核心功能转换为可以从命令行或GUI应用程序调用的类库,无论哪个都需要。

作为GUI应用程序上每个事件的快速测量(但也很奇怪),您也可以调用命令行应用程序。为此,命令行应用程序将接收输入作为参数,并将输出作为文本返回,可以在GUI上显示。

  

请以此作为起点,因为它可能不适用于您的情况。