internal void HandleFlyoutStatusChange(Flyout flyout, MetroWindow parentWindow) { if (flyout == null || parentWindow == null) { return; } ReorderZIndices(flyout); var visibleFlyouts = GetFlyouts(Items).Where(i => i.IsOpen).OrderBy(Panel.GetZIndex); parentWindow.HandleFlyoutStatusChange(flyout, visibleFlyouts); }
internal void HandleFlyoutStatusChange(Flyout flyout, MetroWindow parentWindow) { if (flyout == null || parentWindow == null) { return; } this.ReorderZIndices(flyout); var visibleFlyouts = this.GetFlyouts(this.Items).Where(i => i.IsOpen).OrderBy(Panel.GetZIndex).ToList(); parentWindow.HandleFlyoutStatusChange(flyout, visibleFlyouts); }
private void FlyoutIsOpenChanged(object sender, EventArgs e) { Flyout flyout = this.GetFlyout(sender); //Get the flyout that raised the handler. this.ReorderZIndices(flyout); MetroWindow parentWindow = this.TryFindParent <MetroWindow>(); if (parentWindow != null) { parentWindow.HandleFlyoutStatusChange(flyout); } }
internal void HandleFlyoutStatusChange(Flyout flyout, MetroWindow parentWindow) { if (flyout == null || parentWindow == null) { return; } this.ReorderZIndices(flyout); IOrderedEnumerable <Flyout> flyouts = ( from i in this.GetFlyouts(base.Items) where i.IsOpen select i).OrderBy <Flyout, int>(new Func <Flyout, int>(Panel.GetZIndex)); parentWindow.HandleFlyoutStatusChange(flyout, flyouts); }