【问题标题】:visual studio open windows form from console application c# [duplicate]Visual Studio从控制台应用程序c#打开Windows窗体[重复]
【发布时间】:2015-03-03 07:01:02
【问题描述】:

标题有点模糊,但我的问题是这个。在 Microsoft Visual Studio 中,我在 C# 中制作了一个控制台应用程序,并且在代码中我希望能够在同一个项目中启动一个 Windows 窗体。在 Visual Basic 中,这可以通过 Application.run(formName) 来完成,但是如果在 c# 中使用 refrence 来完成,窗口窗体会打开,但随后会立即停止响应。从控制台应用程序打开表单的正确方法是什么?

class Program
{
    static void Main(string[] args)
    {

        Console.WriteLine("Enter a number");
        int x = int.Parse(Console.ReadLine());

        if (x == 3)
        {
            menu menuInstance = new menu();    //menu would be the name of the windows form
            menuInstance.Show();



        }


        Console.ReadKey();

        }
    }
}

【问题讨论】:

    标签: c# winforms visual-studio-2010 visual-studio


    【解决方案1】:

    使用与 WindowsForms 项目相同的代码,Application.Run 仍然是要走的路:

    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    } 
    

    很难说你最初的尝试做错了什么,因为你没有发布那个代码。

    【讨论】:

    • 下面的代码是没用的原代码。 Application.run 仅适用于 Visual Basic。我正在使用 C#
    • @cooldudsk 我承认这一点,这段代码 C#,是标准的winforms项目使用的。如果这对您不起作用,则问题可能出在其他地方
    • 我们认为这一定是另一个问题,因为我的 Visual Studio 无法将 Application.run 甚至 Application 识别为有效语句。
    • @cooldudsk 您可能需要参考 System.Windows 和 System.Windows.Forms
    • 效果很好,谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    • 2013-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多