private static void OnWaveformLineChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            WaveView waveView = (WaveView)d;

            waveView._lineBrush = e.NewValue as SolidColorBrush;
            waveView.ApplyLineBrushToRenderers();
        }
        private static void OnAudioTrackChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            WaveView   waveView   = d as WaveView;
            AudioTrack audioTrack = e.NewValue as AudioTrack;

            if (waveView != null && audioTrack != null)
            {
                waveView.SetAudioTrack(audioTrack);
            }
        }
        private static void OnTrackOffsetChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            WaveView waveView = d as WaveView;

            waveView.RaiseEvent(new RoutedEventArgs(TrackOffsetChangedEvent, waveView));
        }
        private static void OnWaveformBackgroundChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            WaveView waveView = (WaveView)d;

            waveView._backgroundBrush = e.NewValue as SolidColorBrush;
        }