我正在对我的应用程序进行一些重构,我想在 app.xaml.cs 中收集全局初始化。

我在构造函数中有一些,在 OnStartup 中有一些。

OnStartup 似乎在构造函数之后立即调用。

这两种方法有什么区别?我应该把我所有的代码放在哪里?

最佳答案

the source of System.Windows.Application 可以看出,没有太大区别。
OnStartup 方法是从构造函数调用的最后一个方法。

如果您实现自己的构造函数,则 OnStartup 已经被触发。此外,在独特的情况下,您将覆盖自己的 OnStartup 实现可能会丢弃您已经拥有的实现(如果您不调用 base )。

就个人而言,我仍然会选择 OnStartup ,但我想这并不重要。如果您不知道真正的执行顺序,将两者混合在一起可能会很危险。

关于c# - App 构造函数和 app.Onstartup 有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41422975/

10-11 19:12