Microsoft.UI.Xaml.Controls Namespace

Provides UI controls and classes for creating custom controls.

Classes

AnimatedVisualPlayer

An element that displays and controls an IAnimatedVisual.

BitmapIconSource

Represents an icon source that uses a bitmap as its content.

ColorChangedEventArgs

Provides event data for the ColorChanged event.

ColorPicker

Represents a control that lets a user pick a color using a color spectrum, sliders, and text input.

CommandBarFlyout

Represents a specialized flyout that provides layout for AppBarButton and related command elements.

DropDownButton

Represents a button with a chevron intended to open a menu.

DropDownButtonAutomationPeer

Exposes DropDownButton types to Microsoft UI Automation.

ElementAnimator
ElementFactory
ElementFactoryGetArgs

Represents the optional arguments to use when calling an implementation of the GetElement method of an IElementFactory object.

ElementFactoryRecycleArgs

Represents the optional arguments to use when calling an implementation of the RecycleElement method of an IElementFactory object.

FlowLayout
FlowLayoutState
FontIconSource

Represents an icon source that uses a glyph from the specified font.

IconSource

Represents the base class for an icon source.

IndexPath
ItemsRepeater

Represents a data-driven collection control that incorporates a flexible layout system, custom views, and virtualization, with no default UI or interaction policies.

ItemsRepeaterElementClearingEventArgs

Provides data for the ItemsRepeater.ElementClearing event.

ItemsRepeaterElementIndexChangedEventArgs

Provides data for the ItemsRepeater.ElementIndexChanged event.

ItemsRepeaterElementPreparedEventArgs

Provides data for the ItemsRepeater.ElementPrepared event.

ItemsRepeaterScrollHost

A helper to coordinate interaction between the ItemsRepeater and ScrollViewer. Use the ItemsRepeaterScrollHost if your app will run on versions of Windows prior Windows 10 1809 (Build 17763). If your app will only run on versions of Windows 1809 or higher, there is no need to use this control.

ItemsSourceView

Represents a standardized view of the supported interactions between a given ItemsSource object and an ItemsRepeater control.

Layout

Represents the base class for an object that sizes and arranges child elements for a host.

LayoutContext

Represents the base class for an object that facilitates communication between an attached layout and its host container.

LayoutPanel
MenuBar

Represents a specialized container that presents a set of menus in a horizontal row, typically at the top of an app window.

MenuBarItem

Represents a top-level menu in a MenuBar control.

MenuBarItemFlyout

Represents the flyout of a MenuBar item.

NavigationView

Represents a container that enables navigation of app content. It has a header, a view for the main content, and a menu pane for navigation commands.

NavigationViewBackRequestedEventArgs

Provides event data for the NavigationView.BackRequested event.

NavigationViewDisplayModeChangedEventArgs

Provides data for the NavigationView.DisplayModeChanged event.

NavigationViewItem

Represents the container for an item in a NavigationView control.

NavigationViewItemBase

Base class for NavigationView menu items.

NavigationViewItemCollapsedEventArgs

Provides event data for NavigationViewItem.Collapsed event.

NavigationViewItemExpandingEventArgs

Provides event data for NavigationViewItem.Expanding event.

NavigationViewItemHeader

Represents a header for a group of menu items in a NavigationMenu.

NavigationViewItemInvokedEventArgs

Provides event data for the NavigationView.ItemInvoked event.

NavigationViewItemSeparator

Represents a line that separates menu items in a NavigationMenu.

NavigationViewList

Represents a control that displays menu items in a NavigationView control.

NavigationViewPaneClosingEventArgs

Provides data for the NavigationView.PaneClosing event.

NavigationViewSelectionChangedEventArgs

Provides data for the NavigationView.SelectionChanged event.

NavigationViewTemplateSettings

Provides calculated values that can be referenced as TemplatedParent sources when defining templates for a NavigationView. Not intended for general use.

NonVirtualizingLayout

Represents the base class for an object that sizes and arranges child elements for a host and and does not support virtualization.

NonVirtualizingLayoutContext

Represents the base class for layout context types that do not support virtualization.

NumberBox

Represents a control that can be used to display and edit numbers.

NumberBoxValueChangedEventArgs

Provides event data for the NumberBox.ValueChanged event.

ParallaxView

Represents a container that ties the scroll position of a foreground element, such as a list, to a background element, such as an image. As you scroll through the foreground element, it animates the background element to create a parallax effect.

PathIconSource

Represents an icon source that uses a vector path as its content.

PersonPicture

Represents a control that displays the avatar image for a person, if one is available; if not, it displays the person's initials or a generic glyph.

PersonPictureTemplateSettings

Provides calculated values that can be referenced as TemplatedParent sources when defining templates for a PersonPicture control.

ProgressBar

Represents a control that indicates the progress of an operation, where the typical visual appearance is a bar that animates a filled area as progress continues.

ProgressBarTemplateSettings

Provides calculated values that can be referenced as TemplatedParent sources when defining templates for a ProgressBar control. Not intended for general use.

ProgressRing

Represents a control that indicates that an operation is ongoing. The typical visual appearance is a ring-shaped "spinner" that cycles an animation as progress continues.

ProgressRingTemplateSettings

Provides calculated values that can be referenced as TemplatedParent sources when defining templates for a ProgressRing control. Not intended for general use.

RadioButtons

Represents a control that displays a group of related RadioButton controls.

RadioMenuFlyoutItem

Represents a menu item that is mutually exclusive with other radio menu items in its group.

RatingControl

Represents a control that lets a user enter a star rating.

RatingItemFontInfo

Represents information about the visual states of font elements that represent a rating.

RatingItemImageInfo

Represents information about the visual states of image elements that represent a rating.

RatingItemInfo

Represents information about the visual states of the elements that represent a rating.

RecyclePool
RecyclingElementFactory
RefreshContainer

Represents a container control that provides a RefreshVisualizer and pull-to-refresh functionality for scrollable content.

RefreshInteractionRatioChangedEventArgs

Provides event data.

RefreshRequestedEventArgs

Provides event data for RefreshRequested events.

RefreshStateChangedEventArgs

Provides event data for the RefreshVisualizer.RefreshStateChanged event.

RefreshVisualizer

Represents a control that provides animated state indicators for content refresh.

RevealListViewItemPresenter
ScrollAnimationStartingEventArgs
ScrollCompletedEventArgs
ScrollerAnchorRequestedEventArgs
ScrollerBringingIntoViewEventArgs
ScrollingAnchorRequestedEventArgs
ScrollingBringingIntoViewEventArgs
ScrollingScrollAnimationStartingEventArgs
ScrollingScrollCompletedEventArgs
ScrollingScrollOptions
ScrollingZoomAnimationStartingEventArgs
ScrollingZoomCompletedEventArgs
ScrollingZoomOptions
ScrollOptions
ScrollView
ScrollViewer
SelectionModel
SelectionModelChildrenRequestedEventArgs
SelectionModelSelectionChangedEventArgs
SelectTemplateEventArgs
SplitButton

Represents a button with two parts that can be invoked separately. One part behaves like a standard button and the other part invokes a flyout.

SplitButtonAutomationPeer

Exposes SplitButton types to Microsoft UI Automation.

SplitButtonClickEventArgs

Provides event data for the SplitButton.Click event.

StackLayout

Arranges elements into a single line (with spacing) that can be oriented horizontally or vertically.

StackLayoutState
SwipeControl

Represents a container that provides access to contextual commands through touch interactions.

SwipeItem

Represents an individual command in a SwipeControl.

SwipeItemInvokedEventArgs

Provides event data for the SwipeItem.Invoked event.

SwipeItems

Represents a collection of SwipeItem objects.

SymbolIconSource

Represents an icon source that uses a glyph from the Segoe MDL2 Assets font as its content.

TabView

The TabView control is a way to display a set of tabs and their respective content. Tab controls are useful for displaying several pages (or documents) of content while giving a user the capability to rearrange, open, or close new tabs.

Is this the right control?

Use a TabView to help the user manage multiple app pages or documents within the same window.

Do not use a TabView to display a static set of tabs that the user cannot rearrange, open, or close. Use a Pivot or top NavigationView instead.

TabViewItem

Represents a single tab within a TabView.

TabViewItemTemplateSettings

Gets an object that provides calculated values that can be referenced as {TemplateBinding} markup extension sources when defining templates for a TabViewItem control.

TabViewTabCloseRequestedEventArgs

Provides data for the TabCloseRequested event.

TabViewTabDragCompletedEventArgs

Provides data for he TabDragCompleted event.

TabViewTabDragStartingEventArgs

Provides data for he TabDragStarting event.

TabViewTabDroppedOutsideEventArgs

Provides data for the TabDroppedOutside event.

TeachingTip

A teaching tip is a semi-persistent and content-rich flyout that provides contextual information. It is often used for informing, reminding, and teaching users about important and new features that may enhance their experience.

TeachingTipClosedEventArgs

Provides data for the Closed event.

TeachingTipClosingEventArgs

Provides data for the Closing event.

TeachingTipTemplateSettings

Provides calculated values that can be referenced as TemplatedParent sources when defining templates for a TeachingTip.

TextCommandBarFlyout

Represents a specialized command bar flyout that contains commands for editing text.

ToggleSplitButton

Represents a button with two parts that can be invoked separately. One part behaves like a toggle button and the other part invokes a flyout.

ToggleSplitButtonAutomationPeer

Exposes ToggleSplitButton types to Microsoft UI Automation.

ToggleSplitButtonIsCheckedChangedEventArgs

Provides event data for the ToggleSplitButton.IsCheckedChanged event.

TreeView

Represents a hierarchical list with expanding and collapsing nodes that contain nested items.

TreeViewCollapsedEventArgs

Provides event data for the TreeView.Collapsed event.

TreeViewDragItemsCompletedEventArgs

Provides event data for the TreeView.DragItemsCompleted event.

TreeViewDragItemsStartingEventArgs

Provides event data for the TreeView.DragItemsStarting event.

TreeViewExpandingEventArgs

Provides event data for the TreeView.Expanding event.

TreeViewItem

Represents the container for an item in a TreeView control.

TreeViewItemInvokedEventArgs

Provides event data for the TreeView.ItemInvoked event.

TreeViewItemTemplateSettings

Provides calculated values that can be referenced as TemplatedParent sources when defining templates for a TreeViewItem control. Not intended for general use.

TreeViewList

Represents a flattened list of tree view items so that operations such as keyboard navigation and drag-and-drop can be inherited from ListView.

TreeViewNode

Represents a node in a TreeView control.

TreeViewSelectionChangedEventArgs
TwoPaneView

Represents a container with two views that size and position content in the available space, either side-by-side or top-bottom.

UniformGridLayout

Positions elements sequentially from left to right or top to bottom in a wrapping layout.

UniformGridLayoutState
VirtualizingLayout

Represents the base class for an object that sizes and arranges child elements for a host and supports virtualization.

VirtualizingLayoutContext

Represents the base class for layout context types that support virtualization.

XamlControlsResources

Default styles for the controls in the WinUI library.

ZoomAnimationStartingEventArgs
ZoomCompletedEventArgs
ZoomOptions

Structs

FlowLayoutAnchorInfo
ScrollInfo
ZoomInfo

Interfaces

IAnimatedVisual

An animated visual that can be played by the AnimatedVisualPlayer.

IAnimatedVisualSource

Provides animated visuals for the AnimatedVisualPlayer to play.

IApplicationViewSpanningRects
IDynamicAnimatedVisualSource

When implemented by an IAnimatedVisualSource, indicates to the player that the current animated visual should be discarded.

IElementFactoryShim
IKeyIndexMapping

Provides methods that support mapping between an item's unique identifier and index.

ISelfPlayingAnimatedVisual

Enums

AnimationContext
AnimationMode
ChainingMode
ColorPickerHsvChannel

Defines contstants that specify which Hue-Saturation-Value-Alpha component a slider in a ColorPicker controls.

ColorSpectrumComponents

Defines constants that specify how the Hue-Saturation-Value (HSV) color components are mapped onto the ColorSpectrum.

ColorSpectrumShape

Defines constants that specify how the ColorSpectrum control is shown.

ContentOrientation
ElementRealizationOptions

Defines constants that specify whether to suppress automatic recycling of the retrieved element or force creation of a new element.

FlowLayoutLineAlignment
InputKind
InteractionState
NavigationViewBackButtonVisible

Defines constants that specify whether the back button is visible in NavigationView.

NavigationViewDisplayMode

Defines constants that specify how the pane is shown in a NavigationView.

NavigationViewOverflowLabelMode

Defines constants that specify the label for the overflow button in a NavigationView.

NavigationViewPaneDisplayMode

Defines constants that specify how and where the NavigationView pane is shown.

NavigationViewSelectionFollowsFocus

Defines constants that specify whether item selection changes when keyboard focus changes in a NavigationView.

NavigationViewShoulderNavigationEnabled

Defines constants that specify when gamepad bumpers can be used to navigate the top-level navigation items in a NavigationView.

NumberBoxSpinButtonPlacementMode

Placement configuration for spin buttons which are used to increment or decrement the Value of a NumberBox.

NumberBoxValidationMode

Preconfigured input validation behavior invoked when invalid input is entered.

ParallaxSourceOffsetKind

Defines constants that specify how the source offset values of a ParallaxView are interpreted.

RailingMode
RefreshPullDirection

Defines constants that specify the direction to pull a RefreshContainer to initiate a refresh.

RefreshVisualizerOrientation

Defines constants that specify the orientation of a RefreshVisualizer.

RefreshVisualizerState

Defines constants that specify the state of a RefreshVisualizer

ScrollBarVisibility
ScrollMode
SnapPointsMode
SwipeBehaviorOnInvoked

Defines constants that specify how a SwipeControl behaves after a command is invoked.

SwipeMode

Defines constants that specify the effect of a swipe interaction.

TabViewCloseButtonOverlayMode

Defines constants that describe the behavior of the close button contained within each TabViewItem. The default is Auto.

TabViewWidthMode

Defines constants that specify the width of the tabs.

TeachingTipCloseReason

Defines constants that specify the cause of the Close event.

TeachingTipHeroContentPlacementMode

Defines constants that specify the location for positioning HeroContent within a teaching tip.

TeachingTipPlacementMode

Defines constants that specify the preferred location for positioning a teaching tip.

TeachingTipTailVisibility

Defines constants that specify whether a teaching tip's Tail is visible or collapsed.

TreeViewSelectionMode

Defines constants that specify the selection behavior for a TreeView instance.

TwoPaneViewMode

Defines constants that specify how panes are shown in a TwoPaneView.

TwoPaneViewPriority

Defines constants that specify which pane has priority in a TwoPaneView.

TwoPaneViewTallModeConfiguration

Defines constants that specify how panes are shown in a TwoPaneView in tall mode.

TwoPaneViewWideModeConfiguration

Defines constants that specify how panes are shown in a TwoPaneView in wide mode.

UniformGridLayoutItemsJustification

Defines constants that specify how items are aligned on the non-scrolling or non-virtualizing axis.

UniformGridLayoutItemsStretch

Defines constants that specify how items are sized to fill the available space.

ZoomMode

Delegates

ElementAnimationCompleted

Remarks

This namespace requires the Microsoft.UI.Xaml.Controls NuGet package, a part of the Microsoft Windows UI Library.