如何重新启动WPF应用程序?

3

我该如何从代码中重新启动WPF应用程序?在Windows Forms中,有Application.Restart方法,但由于某种原因,Microsoft决定不在WPF中添加该方法。

我讨厌WPF和WindowsForms之间的不兼容性!例如:

            window.Visibility = System.Windows.Visibility.Hidden;

有什么问题吗?

            window. Visible = false;

2
这是两个独立的问题。 - Dmitry Ornatsky
请看这个问题:https://dev59.com/yW445IYBdhLWcg3wnrki - SepehrM
这个回答解决了你的问题吗?使用C#重新启动应用程序 - slugster
1个回答

3

可见性

对于控件和面板,Visibility.CollapsedVisiblity.Hidden 之间存在巨大的区别。 隐藏保留不可见元素的空间,折叠则释放已使用的空间。这可能会在 UI 中产生很大的差异。

在窗口类的可见性方面使用相同的枚举首先是在类库中保持一致性的问题,但也可能有其他更细微的差异。

重新启动

如果有直接重启应用程序的可能性,我不知道。您可以尝试使用 App.Current.Shutdown() 关闭应用程序,然后通过 System.Diagnostics.Process.Start() 启动新实例,其中应用程序的路径可以从 System.Reflection.Assembly.GetEntryAssembly() 获取。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接