2012-02-29 4 views

Odpowiedz

6

MainWindow.Close nic nie zrobi, jeśli ShutdownMode nie zostanie ustawione. Możesz robić, co chcesz, powinien po prostu pasować do tego, co spodziewa się.

(Shutdown będzie ignorować faktu, że niektóre Closing zdarzenie zostało anulowane, więc byłoby to jedno, trzeba wziąć pod uwagę)

Also:

Shutdown jest niejawnie wywoływany przez Windows Presentation Foundation (WPF) w następujących sytuacjach:

  • Gdy parametr ShutdownMode jest ustawiony na OnLastWindowClose.

  • Gdy tryb ShutdownMode jest ustawiony na OnMainWindowClose.

  • Gdy użytkownik kończy sesję i zdarzenie SessionEnding jest nieobsługiwane lub obsługiwane bez anulowania.

+0

+1 za wskazanie "ShutdownMode". Nie pamiętam, co robiłem, ale miałem jedną aplikację WPF, w której musiałem ustawić 'ShutdownMode' na' OnExplicitShutdown' z powodu problemów z uruchomieniem aplikacji. – Rachel

+0

@Rachel: To brzmi dziwnie, ponieważ jest to tryb, w którym jest "najmniej prawdopodobne", aby wyjść, aby mówić tak, jak trzeba to zrobić ręcznie. –

+0

Dzięki, anulowanie zamknięcia jest dla mnie kluczowym czynnikiem. –