2010-09-28 4 views
1

У меня есть следующий код в окне B, который запускается в отдельном потоке из окна А.Как закрыть окно в C#

view.Closing += (sender, e) => 
{ 
    view.Visibility = Visibility.Collapsed; 
    e.Cancel = true; 
}; 

Когда я закрываю окно окна B остается в памяти и приложение не утилизируется. Как я должен идти вперед, убедитесь, что приложение закрыто при закрытии окна A.

изменить: окно B занимает некоторое время, чтобы загрузить и построить, поэтому код там.

ответ

3

использование Application.Exit();

Для WPF: Application.Current.Shutdown();

+0

как раз такой? – Makach

+0

Да, он выйдет из приложения. – Ruel

+0

Я отредактировал теги: XBap означает не WinForms. –

2

Основное решение: Окно А требуется сохранить реф, чтобы окна B и Dispose() его.

Возможно, вам придется отменить логику отмены в условном выражении B.

+0

Application.Current.Shutdown(), кажется, работает нормально. Должен ли я идти (немного) дольше и делать то, что вы предлагаете здесь? – Makach

+0

Не обязательно необходимо, было бы целесообразно, если бы у вас было много очистки в окне (окнах) –

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