MenuFlyout MenuFlyout MenuFlyout Class

Definition

Represents a flyout that displays a menu of commands.

public : class MenuFlyout : FlyoutBase, IMenuFlyout, IMenuFlyout2
public class MenuFlyout : FlyoutBase, IMenuFlyout, IMenuFlyout2
Public Class MenuFlyout Inherits FlyoutBase Implements IMenuFlyout, IMenuFlyout2
<MenuFlyout>
  oneOrMoreItems
</MenuFlyout>
Inheritance
Attributes
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

Remarks

MenuFlyout temporarily displays a list of commands or options related to what the user is currently doing.

Menu flyout control

Use a Flyout control to display single items and a MenuFlyout control to show a menu of items. For more info, see Menus and context menus.

A MenuFlyout control can be used as the value of the Button.Flyout property. This is usually set in XAML as part of a UI definition of the page. Button is the only control that has a dedicated Flyout property. To associate a MenuFlyout with other controls, use the FlyoutBase.AttachedFlyout attached property. When set as Button.Flyout, the MenuFlyout displays when the button is tapped or otherwise invoked. When a MenuFlyout is assigned to other UI elements using FlyoutBase.AttachedFlyout, you must call either the ShowAt method or the static ShowAttachedFlyout method to display the flyout.

In addition to the members listed above, there are other members of the base class FlyoutBase that are often used in typical MenuFlyout scenarios:

Constructors

MenuFlyout() MenuFlyout() MenuFlyout()

Initializes a new instance of the MenuFlyout class.

public : MenuFlyout()
public MenuFlyout()
Public Sub New()

Properties

AllowFocusOnInteraction AllowFocusOnInteraction AllowFocusOnInteraction

Inherited from FlyoutBase

AllowFocusOnInteractionProperty AllowFocusOnInteractionProperty AllowFocusOnInteractionProperty

Inherited from FlyoutBase

AllowFocusWhenDisabled AllowFocusWhenDisabled AllowFocusWhenDisabled

Inherited from FlyoutBase

AllowFocusWhenDisabledProperty AllowFocusWhenDisabledProperty AllowFocusWhenDisabledProperty

Inherited from FlyoutBase

AttachedFlyoutProperty AttachedFlyoutProperty AttachedFlyoutProperty

Inherited from FlyoutBase

Dispatcher Dispatcher Dispatcher

Inherited from DependencyObject

ElementSoundMode ElementSoundMode ElementSoundMode

Inherited from FlyoutBase

ElementSoundModeProperty ElementSoundModeProperty ElementSoundModeProperty

Inherited from FlyoutBase

Items Items Items

Gets the collection used to generate the content of the menu.

public : IVector<MenuFlyoutItemBase> Items { get; }
public IList<MenuFlyoutItemBase> Items { get; }
Public ReadOnly Property Items As IList<MenuFlyoutItemBase>
<MenuFlyout>
  oneOrMoreItems
</MenuFlyout>
Value
IVector<MenuFlyoutItemBase> IList<MenuFlyoutItemBase> IList<MenuFlyoutItemBase>

The collection that is used to generate the content of the menu, if it exists; otherwise, null. The default is an empty collection.

See Also

LightDismissOverlayMode LightDismissOverlayMode LightDismissOverlayMode

Inherited from FlyoutBase

LightDismissOverlayModeProperty LightDismissOverlayModeProperty LightDismissOverlayModeProperty

Inherited from FlyoutBase

MenuFlyoutPresenterStyle MenuFlyoutPresenterStyle MenuFlyoutPresenterStyle

Gets or sets the style that is used when rendering the MenuFlyout.

public : Style MenuFlyoutPresenterStyle { get; set; }
public Style MenuFlyoutPresenterStyle { get; set; }
Public ReadWrite Property MenuFlyoutPresenterStyle As Style
<MenuFlyout MenuFlyoutPresenterStyle="resourceReferenceToStyle"/>
Value
Style Style Style

The style that is used when rendering the MenuFlyout.

Remarks

The TargetType value to use for the Style must be MenuFlyoutPresenter (not MenuFlyout).

You can't style a MenuFlyout directly. Instead, you apply a style to the MenuFlyoutPresenter that provides the visuals for the flyout. You can also style MenuFlyoutItem and ToggleMenuFlyoutItem (they are controls) and you can use implicit styles to do so. Or, you can set UI-related properties on the MenuFlyoutItem and ToggleMenuFlyoutItem items directly.

See Also

MenuFlyoutPresenterStyleProperty MenuFlyoutPresenterStyleProperty MenuFlyoutPresenterStyleProperty

Identifies the MenuFlyoutPresenterStyle dependency property.

public : static DependencyProperty MenuFlyoutPresenterStyleProperty { get; }
public static DependencyProperty MenuFlyoutPresenterStyleProperty { get; }
Public Static ReadOnly Property MenuFlyoutPresenterStyleProperty As DependencyProperty
Value
DependencyProperty DependencyProperty DependencyProperty

The identifier for the MenuFlyoutPresenterStyle dependency property.

OverlayInputPassThroughElement OverlayInputPassThroughElement OverlayInputPassThroughElement

Inherited from FlyoutBase

OverlayInputPassThroughElementProperty OverlayInputPassThroughElementProperty OverlayInputPassThroughElementProperty

Inherited from FlyoutBase

Placement Placement Placement

Inherited from FlyoutBase

PlacementProperty PlacementProperty PlacementProperty

Inherited from FlyoutBase

Target Target Target

Inherited from FlyoutBase

Methods

ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Inherited from DependencyObject

CreatePresenter CreatePresenter CreatePresenter

Inherited from FlyoutBase

GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty)

Inherited from DependencyObject

GetAttachedFlyout(FrameworkElement) GetAttachedFlyout(FrameworkElement) GetAttachedFlyout(FrameworkElement)

Inherited from FlyoutBase

GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Inherited from DependencyObject

Hide Hide Hide

Inherited from FlyoutBase

OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs) OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs) OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs)

Inherited from FlyoutBase

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Inherited from DependencyObject

RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback) RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback) RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback)

Inherited from DependencyObject

SetAttachedFlyout(FrameworkElement,FlyoutBase) SetAttachedFlyout(FrameworkElement,FlyoutBase) SetAttachedFlyout(FrameworkElement,FlyoutBase)

Inherited from FlyoutBase

SetValue(DependencyProperty,Object) SetValue(DependencyProperty,Object) SetValue(DependencyProperty,Object)

Inherited from DependencyObject

ShowAt(FrameworkElement) ShowAt(FrameworkElement) ShowAt(FrameworkElement)

Inherited from FlyoutBase

ShowAt(UIElement, Point) ShowAt(UIElement, Point) ShowAt(UIElement, Point)

Shows the flyout placed at the specified offset in relation to the specified target element.

public : void ShowAt(UIElement targetElement, Point point)
public void ShowAt(UIElement targetElement, Point point)
Public Function ShowAt(targetElement As UIElement, point As Point) As void
Parameters
targetElement
UIElement UIElement UIElement

The element to use as the flyout's placement target.

point
Point Point Point

The point at which to offset the flyout from the specified target element.

Examples

To position the menu relative to a UI element, specify the element and offset.

MenuFlyout.ShowAt(element, new Point(0,0);

To position the menu relative to the application window, set the targetElement parameter to null.

MenuFlyout.ShowAt(null, new Point(x, y));

Remarks

When you call this method to show a MenuFlyout, it automatically renders outside the application window if possible and required.

Some properties might not flow as expected, such as FlowDirection. To ensure correct flow, you can set the flow direction in the MenuFlyoutPresenter The MenuFlyoutPresenter must be set before the MenuFlyout is first shown.

See Also

ShowAttachedFlyout(FrameworkElement) ShowAttachedFlyout(FrameworkElement) ShowAttachedFlyout(FrameworkElement)

Inherited from FlyoutBase

TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs) TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs) TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs)

Inherited from FlyoutBase

UnregisterPropertyChangedCallback(DependencyProperty,Int64) UnregisterPropertyChangedCallback(DependencyProperty,Int64) UnregisterPropertyChangedCallback(DependencyProperty,Int64)

Inherited from DependencyObject

Events

Closed Closed Closed

Inherited from FlyoutBase

Closing Closing Closing

Inherited from FlyoutBase

Opened Opened Opened

Inherited from FlyoutBase

Opening Opening Opening

Inherited from FlyoutBase

See Also