private bool FadingVolumeGauge() { if (isAwaitVolumeGaugeRunning) { _volumeGauge.Abort(); isAwaitVolumeGaugeRunning = false; } if (VolumeMixer.Visibility == Visibility.Collapsed) { VolumeMixer.Visibility = Visibility.Visible; DoubleAnimation fadeIn = new DoubleAnimation(0, 1, TimeSpan.FromSeconds(0.1), FillBehavior.Stop); fadeIn.Completed += (object senderr, EventArgs ee) => { VolumeMixer.Opacity = 1; }; VolumeMixer.BeginAnimation(OpacityProperty, fadeIn); CountDownFadeOutVolume(); _volumeGauge.Start(); isAwaitVolumeGaugeRunning = true; return(false); } return(true); }
private void CountDownFadeOutVolume() { try { _volumeGauge = new Thread(() => { Thread.Sleep(1500); Dispatcher.Invoke(() => { DoubleAnimation fadeOut = new DoubleAnimation(1, 0, TimeSpan.FromSeconds(0.1), FillBehavior.Stop); fadeOut.Completed += (object senderr, EventArgs ee) => { VolumeMixer.Opacity = 0; VolumeMixer.Visibility = Visibility.Collapsed; }; VolumeMixer.BeginAnimation(OpacityProperty, fadeOut); isAwaitVolumeGaugeRunning = false; }); }); } catch { } }