Приложение WPF по-прежнему работает в фоновом режиме после закрытия - PullRequest
22 голосов
/ 23 августа 2010

Это немного связано с вопросом, заданным здесь, но ответ не относится к моему делу, поскольку я не использую темы:

WPF Не закрывается должным образом

Я преобразовал одно из своих приложений WinForm в приложение WPF, ничего радикального не потребовалось, кроме как заменить несколько слов эквивалентами WPF / C # 4.0 (MessageBoxButtons на MessageBoxButton, почему разница в одну букву?). *

В любом случае, если я запускаю приложение через отладчик, оно работает нормально, пока я не подхожу, чтобы закрыть его кнопкой «X» в правом верхнем углу окна. Окно приложения закрывается, но я заметил, что отладчик по-прежнему показывает значок остановки, проверка в диспетчере задач подтверждает, что он все еще работает.

Я не запускаю никаких других потоков в фоновом режиме, поэтому я знаю, что он не ждет чего-то другого.

Я только начал с WPF, но предположил, что когда пользователь закрывает приложение, оно просто ... закрывается?

Спасибо за помощь!

Ответы [ 3 ]

37 голосов
/ 23 августа 2010

Какой у вас режим выключения ? Если это явно, то это потому, что вы явно не выключаетесь. Если это главное окно, это потому, что вы не назначили главное окно для Application.MainWindow.

9 голосов
/ 11 декабря 2010

Напишите этот код на кнопке закрытия приложения:

Application.Current.Shutdown()
2 голосов
/ 27 августа 2015

альтернативно, добавьте это в свой App.cs

public App()
    {
        ShutdownMode = ShutdownMode.OnLastWindowClose;
    }

Подробное описание здесь

...