/// <summary>
        /// Handles changes to the FadeOutDirection property.
        /// </summary>
        /// <param name="d">FluidStatusBar</param>
        /// <param name="e">DependencyProperty changed event arguments</param>
        private static void OnFadeOutDirectionChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            FluidStatusBar  fsBar = (FluidStatusBar)d;
            StatusDirection oldFadeOutDirection = (StatusDirection)e.OldValue;
            StatusDirection newFadeOutDirection = fsBar.FadeOutDirection;

            fsBar.OnFadeOutDirectionChanged(oldFadeOutDirection, newFadeOutDirection);
        }
        /// <summary>
        /// Handles changes to the Message property.
        /// </summary>
        /// <param name="d">FluidStatusBar</param>
        /// <param name="e">DependencyProperty changed event arguments</param>
        private static void OnMessageChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            FluidStatusBar statusBar  = (FluidStatusBar)d;
            StatusMessage  oldMessage = (StatusMessage)e.OldValue;
            StatusMessage  newMessage = statusBar.Message;

            statusBar.OnMessageChanged(oldMessage, newMessage);
        }
        /// <summary>
        /// Handles changes to the MoveDuration property.
        /// </summary>
        /// <param name="d">FluidStatusBar</param>
        /// <param name="e">DependencyProperty changed event arguments</param>
        private static void OnMoveDurationChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            FluidStatusBar fsBar           = (FluidStatusBar)d;
            Duration       oldMoveDuration = (Duration)e.OldValue;
            Duration       newMoveDuration = fsBar.MoveDuration;

            fsBar.OnMoveDurationChanged(oldMoveDuration, newMoveDuration);
        }
        /// <summary>
        /// Handles changes to the TextVerticalAlignment property.
        /// </summary>
        /// <param name="d">FluidStatusBar</param>
        /// <param name="e">DependencyProperty changed event arguments</param>
        private static void OnTextVerticalAlignmentChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            FluidStatusBar    fsBar = (FluidStatusBar)d;
            VerticalAlignment oldTextVerticalAlignment = (VerticalAlignment)e.OldValue;
            VerticalAlignment newTextVerticalAlignment = fsBar.TextVerticalAlignment;

            fsBar.OnTextVerticalAlignmentChanged(oldTextVerticalAlignment, newTextVerticalAlignment);
        }
        /// <summary>
        /// Handles changes to the FadeOutDistance property.
        /// </summary>
        /// <param name="d">FluidStatusBar</param>
        /// <param name="e">DependencyProperty changed event arguments</param>
        private static void OnFadeOutDistanceChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            FluidStatusBar fsBar = (FluidStatusBar)d;
            double         oldFadeOutDistance = (double)e.OldValue;
            double         newFadeOutDistance = fsBar.FadeOutDistance;

            fsBar.OnFadeOutDistanceChanged(oldFadeOutDistance, newFadeOutDistance);
        }