You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## ⚠️ КРИТИЧЕСКИ ВАЖНО: Завершение работы приложения
19
+
20
+
### Как это работает
21
+
22
+
WPF приложения по умолчанию используют `ShutdownMode.OnLastWindowClose`, что означает завершение работы при закрытии **последнего** окна. Поскольку уведомления — это тоже окна, они **блокировали бы** выгрузку приложения.
23
+
24
+
**Решение:** При первом показе уведомления менеджер **автоматически** изменяет режим завершения на `ShutdownMode.OnMainWindowClose`, если `KeepApplicationAlive = false` (по умолчанию).
Debug.WriteLine(Application.Current.ShutdownMode); // Должно быть: OnMainWindowClose
505
+
```
506
+
507
+
**Если проблема сохраняется:**
508
+
1. Убедитесь, что `KeepApplicationAlive = false` (по умолчанию)
509
+
2. Проверьте, что используете последнюю версию библиотеки
510
+
3. Убедитесь, что главное окно установлено: `Application.Current.MainWindow != null`
511
+
512
+
### Уведомления продолжают показываться после закрытия приложения
513
+
514
+
**Проблема:** Уведомления из очереди продолжают появляться после закрытия главного окна.
515
+
516
+
**Решение:** Система автоматически очищает очередь при завершении, но можно явно вызвать:
517
+
518
+
```csharp
519
+
// В обработчике закрытия главного окна (необязательно)
520
+
protectedoverridevoidOnClosing(CancelEventArgse)
521
+
{
522
+
ToastNotificationManager.Default.CloseAll();
523
+
base.OnClosing(e);
524
+
}
525
+
```
526
+
527
+
### Окна уведомлений появляются в панели задач
528
+
529
+
**Проблема:** Иконки уведомлений видны в панели задач Windows.
530
+
531
+
**Решение:** Это происходит только при `KeepApplicationAlive = true`. Используйте значение по умолчанию (`false`), и окна не будут появляться в панели задач.
0 commit comments