2010-09-03 4 views
3

Как перезапустить приложение WPF из кода? в Windows Forms есть Application.Restart, где по какой-либо причине Microsoft решила не добавлять этот метод в WPF.Как перезапустить приложение WPF?

Ненавижу дискоммутируемость между WPF и WindowsForms! например:

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

Что не так с этим?

  window. Visible = false; 
+2

Это два отдельных вопроса. –

+0

Взгляните на этот вопрос: http://stackoverflow.com/questions/4773632/how-do-i-restart-a-wpf-application – SepehrM

ответ

3

Видимость

Для управления и панелей, существует огромная разница между Visibility.Collapsed и Visiblity.Hidden. Скрытое резервирует пространство невидимого элемента, Collapse освобождает использованное пространство. Это может иметь большое значение в пользовательском интерфейсе.

Использование того же перечисления для видимости оконного класса - это, прежде всего, ИМО, вопрос о постоянстве в библиотеке классов, но может быть и другие незначительные отличия.

Restart

Если есть возможность непосредственно перезапустить приложение, я не знаю. Вы можете попробовать использовать App.Current.Shutdown(), чтобы закрыть приложение и запустить новый экземпляр через System.Diagnostics.Process.Start(), где путь к приложению можно взять с System.Reflection.Assembly.GetEntryAssembly(). `.

Смежные вопросы