Реализовать иконку в system tray можно с помощью NotifyIcon; для этого в References проекта WPF Application надо:
- добавить сборку System.Windows.Forms.dll
- в App.xaml у тега Application убрать атрибут StartupUri
- в App.cs в class App добавить конструктор
public App( ) { // закрытие всех окон приложения не приводит к его завершению this .ShutdownMode = ShutdownMode.OnExplicitShutdown; // создать иконку и поместить ее в system tray var ni = .Windows NotifyIcon(.Forms . ) ; ni .Visible = true;ni .Icon = ResourcesWpfApplication6 .Properties . .Icon1; ni .Click += ( s, _) = > { // создать и показать окно var uri = "Window1 .xaml" ,.Relative) ; var wnd = .LoadComponent( as Window;uri) wnd .Visibility = Visibility.Visible; wnd .ShowInTaskbar = false;}; // определить контекстное меню ni .ContextMenu = new System.Windows ContextMenu(.Forms . new[] { // завершить приложение new System .Windows MenuItem(.Forms . "Exit", { ni .Visible = false;this .Shutdown( ) ; }) }) ; }
Комментариев нет:
Отправить комментарий