总是烦恼我C#想要为你做这个创业公司。所以现在我正在尝试制作自己的主要方法。这不起作用:
我提供了这个主要方法:
[System.STAThreadAttribute()]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
public static void Main()
{
Model model= new Model();
Controller controller = new Controller(model);
MainWindow window = new MainWindow(controller, model);
}
此方法已运行,但我看不到任何视觉效果。 我想我会错过以下正常主要代码:
Application.App app = new Application.App();
app.InitializeComponent();
app.Run();
我尝试使用相同的代码覆盖OnStartUp,但是会引发异常。 如果您有其他解决方案,我愿意听。我只是不明白为什么我的MainWindow必须先创建。
答案 0 :(得分:5)
你是对的:你需要实例化一个应用程序并在其上调用Run。 (你在Main中这样做。)为了让它在运行时显示你的窗口,有三个选项:
MainWindow w = ...; new MyApp().Run(w);
myApp.StartupUri = new Uri(...); myApp.Run();
myApp.Startup += (...) => new MainWindow().Show();
手动启动代码的示例在MSDN中显示在Application.Run()和Application.Run(Window)条目下 - 这些应该可以帮助您入门! Run()重载还讨论了为什么需要 Application.Run以及它需要做什么,例如启动调度程序循环。
答案 1 :(得分:0)
总是烦恼我C#想要为你做这个创业公司。所以现在我正在尝试制作自己的主要方法。这不起作用:
C#不会为您启动。它会为您插入代码。您可以随时更改代码,以便随意更改。如果我是你,我会做的第一件事 - 右键单击项目文件,然后选择属性。在“应用程序”(顶部选项卡)下 - 请参阅“启动对象”。
您可以选择表单
此外 - 如果您希望窗口显示,则错过了一行:
window.Show();