private MenuItem[] CreateNotifyIconContextMenu() { var exit = new MenuItem { Text = "Exit" }; exit.Click += (o, s) => { _service.Stop(); Close(); }; var restart = new MenuItem { Text = "Restart" }; restart.Click += (o, s) => { _service.Stop(); _service.Start(); }; var dashboard = new MenuItem { Text = "Dashboard" }; dashboard.Click += (o, s) => { var dashboardPath = Path.Combine(BaseDir + "\\Client.WPF.exe"); if (File.Exists(dashboardPath)) { var startInfo = new ProcessStartInfo(); startInfo.FileName = dashboardPath; Process.Start(startInfo); } else { _logger.Fatal(new FileNotFoundException(dashboardPath)); } }; return(new MenuItem[] { dashboard, restart, exit }); }
public MainWindow() { InitializeComponent(); _service = new SensorDataService(); _logger = LogManager.GetCurrentClassLogger(); AppDomain currentDomain = AppDomain.CurrentDomain; currentDomain.UnhandledException += CurrentDomain_UnhandledException; CreateIcon(); _service.Start(); try { EnsureAppIsInStartup(); } catch (Exception e) { _logger.Fatal(e); } }