public MainWindow() { InitializeComponent(); var noDisplayTimeConfigured = !double.TryParse(ConfigurationManager.AppSettings["DisplayTime"], out var displayTime); if (noDisplayTimeConfigured) { displayTime = 6.0; } _soundPlayer = new SoundPlayer(ConfigurationManager.AppSettings["SoundFileName"]); _windowHider = new WindowHider(this, displayTime); var headerFilePath = ConfigurationManager.AppSettings["HeaderMessageFile"]; var filePath = ConfigurationManager.AppSettings["MessageFile"]; var networkPath = Path.GetDirectoryName(filePath); _headerMessageLoader = new MessageLoader(headerFilePath); _messageLoader = new MessageLoader(filePath); _messageWatcher = new MessageFileWatcher(networkPath, FileChange, filePath); _imageLoader = new ImageLoader(ConfigurationManager.AppSettings["ImagePath"]); _windowHider.HideWindow(); _messageWatcher.Start(); StateChanged += MainWindow_StateChanged; Wilfred.Source = _imageLoader.Image; Message.Content = _messageLoader.LoadMessage(); }
private void MainWindow_StateChanged(object sender, EventArgs e) { if (WindowState == WindowState.Minimized) { _windowHider.HideWindow(); _messageWatcher.Start(); } else if (WindowState == WindowState.Maximized) { _messageWatcher.Stop(); } }