很抱歉混淆title = D
在WindowsForms
我有Main
方法,我可以在创建或显示主窗体之前使用 。例如,处理命令行参数,显示启动窗口和预加载配置,有几个窗口一个接一个显示,主循环(当有可重复的工作序列时,那么Main
很漂亮放在那里的好地方do{}while
)等。
Main
中这种WPF
方法的最佳类比?
我尝试使用Application.Startup
事件,但它有一些issues。
我可以想到以某种方式以编程方式创建wpf应用程序(然后我应该从xaml autogenerated Main
解除绑定并且可以拥有自己的)。但这听起来太复杂了。我可能错过了一些非常简单的事情。
答案 0 :(得分:4)
从WinForms开发转向WPF开发可能会带来一些心态的改变。我会调查WPF and MVVM,网上有很多资源。
之后,您应该开始查看基于此构建的各种框架,例如Prism,Caliburn.Micro,MVVMLight等,这些框架都有关于构建WPF的各种教程和文档具有闪屏和复合窗口的应用程序。
对于它的价值,protected override void OnStartup
中的App.xaml.cs
是你想要“先做某事”的地方,比如在加载主屏幕之前显示启动画面。
答案 1 :(得分:0)
解决方案是......在Main
。
为此,我必须停用自动生成Main
(将App.xaml
属性BuildAction
设置为Page
,而不是默认ApplicationDefinition
)然后我可以在Main
类中创建自己的Application
:
public partial class App : Application
{
[STAThread]
public static void Main()
{
}
}
我可以完全控制何时以及如何显示窗口,进行初始化,取消等等。