Страницы

Поиск по вопросам

воскресенье, 1 декабря 2019 г.

Сворачивание приложения в трей

#c_sharp #wpf


Допустим есть программа которая фоном делает определенные операции, не важно какие,
допустим каждые 10 секунд собирает информацию по нагрузке ЦП и RAM. Программа сама
по себе десктопная, запускается ручками, надо бы сделать ее чтобы она в авторане запускалась.

Вопрос: как научить ее чтобы при сворачивании она скрывалась в трей, и при необходимости
опрокидывала какие либо сообщения. Например как антивирус касперского. Висит в трее,
опрокидывает уведомления, когда открываешь - появляется в панеле задач
    


Ответы

Ответ 1



Я использую Hardcodet.NotifyIcon.Wpf В XAML добавьте пространство имен: xmlns:tb="http://www.hardcodet.net/taskbar" В контейнер окна поместите: Для того чтобы свернуть окно в трей, подпишитесь на событие StateChanged: WindowState prevState; private void Window_StateChanged(object sender, EventArgs e) { if (WindowState == WindowState.Minimized) Hide(); else prevState = WindowState; } Чтобы развернуть, например при левом клике по иконке в трее: private void TaskbarIcon_TrayLeftMouseDown(object sender, RoutedEventArgs e) { Show(); WindowState = prevState; } Для отображения каких-либо сообщений, можно использовать, например, Popup или ToolTip

Комментариев нет:

Отправить комментарий