C# 表格在C中显示后立即关闭#

C# 表格在C中显示后立即关闭#,c#,.net,C#,.net,我有一个表单有点麻烦,这是一个表单设计与表单设计师和我的项目,它关闭后立即显示。以下是相关代码: namespace Grapher { class Program { static void Main(string[] args) { InputForm mainForm = new InputForm(); mainForm.Show(); } } } 我已经试着为(;)

我有一个表单有点麻烦,这是一个表单设计与表单设计师和我的项目,它关闭后立即显示。以下是相关代码:

namespace Grapher
{
    class Program
    {
        static void Main(string[] args)
        {
            InputForm mainForm = new InputForm();
            mainForm.Show();
        }
    }
}
我已经试着为(;)写了一篇文章,但这只是一个悬念,我可能在做一些愚蠢的事情,对C#来说是非常陌生的

提前感谢。

使用:

做:


这将正确启动UI。

您需要调用
应用程序。运行(new InputForm())


您的代码只是显示表单,然后程序到达它的结尾(主函数的结尾)并终止。

使用
form.ShowDialog()
而不是
form.Show()

解决了这个问题。这是否就流而言为表单提供了控制权?如果您的意思是表单的代码将按照这个方式运行,那么是的。构造函数运行,即调用
InitializeComponent
,然后运行一组事件处理程序,最相关的是
Form.Load
。当该窗体关闭时,控件将返回到
Main
方法。Main()方法有多个错误。它有一个关键的bug,它会让你的生活因为随机和无法解释的异常而痛苦。使用由项目模板预先生成的版本,在真正了解您正在执行的操作之前不要编写自己的版本。这实际上是由console应用程序项目生成的,但您可以向我指出吗?那么您为什么要运行WinForm?我正试图将一个SFML.NET窗口与WinForm结合起来。创建一个Winforms项目,复制并粘贴程序类。
namespace Grapher
{
    class Program
    {
        static void Main(string[] args)
        {
            Application.Run(new InputForm());
        }
    }
}
Application.Run(mainForm);