/// <summary>
        /// Event-Handler, der aufgerufen wird, wenn die Property IsOpen einen neuen Wert
        /// erhalten hat.
        /// </summary>
        /// <param name="d">Das DependencyObject, zu dem das Property gehört.</param>
        /// <param name="e">Die Eventparameter.</param>
        private static void IsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            Debug.WriteLine("In Flyout IsOpenChanged method. Value for d is {0}." + 
            " Value for newValue is: {1}.", d.ToString(), (bool)e.NewValue);

            FlyoutBase fb = d as FlyoutBase;
            if (fb == null)
                return;

            if ((bool)e.NewValue)
            {
                fb.Closed += fb_Closed;
                fb.ShowAt(GetParent(d));
            }
            else
            {
                fb.Closed -= fb_Closed;
                fb.Hide();
            }
        }