public Screensaver() { this.InitializeComponent(); this.DataContext = App.Services.GetRequiredService <ScreensaverViewModel>(); this.Loaded += (_, _) => { ViewModel.Initialize(); ViewModel.PropertyChanging += PropertyChanging; }; this.Unloaded += (_, _) => { ImageSb1.Stop(); ImageSb2.Stop(); ViewModel.Dispose(); ViewModel.PropertyChanging -= PropertyChanging; }; this.SizeChanged += OnSizeChanged; }
private void PropertyChanging(object sender, PropertyChangingEventArgs e) { if (e.PropertyName == nameof(ViewModel.ImageVisible1)) { if (ViewModel.ImageVisible1 == false) { ImageSb1.Stop(); ImageSb1.Begin(); } } else if (e.PropertyName == nameof(ViewModel.ImageVisible2)) { if (ViewModel.ImageVisible2 == false) { ImageSb2.Stop(); ImageSb2.Begin(); } } }