Files
Andy (Steve) De George e9fcf43083 Merge pull request #1135 from dotnet/adegeo-links
Correct .NET Framework links that pointed to old .NET 5 URLs
2021-08-11 12:04:34 -07:00

3.4 KiB

title, ms.date, helpviewer_keywords, ms.assetid
title ms.date helpviewer_keywords ms.assetid
ContextMenu Styles and Templates 03/30/2017
templates [WPF], ContextMenu
parts [WPF], ContextMenu
ContextMenu [WPF], styles and templates
styles [WPF], ContextMenu
ControlTemplate [WPF], ContextMenu
states [WPF], ContextMenu
342d1f17-c406-4f94-8f55-867c5f3ea511

ContextMenu Styles and Templates

This topic describes the styles and templates for the xref:System.Windows.Controls.ContextMenu control. You can modify the default xref:System.Windows.Controls.ControlTemplate to give the control a unique appearance. For more information, see Create a template for a control.

ContextMenu Parts

The xref:System.Windows.Controls.ContextMenu control does not have any named parts.

When you create a xref:System.Windows.Controls.ControlTemplate for a xref:System.Windows.Controls.ContextMenu, your template might contain an xref:System.Windows.Controls.ItemsPresenter within a xref:System.Windows.Controls.ScrollViewer. (The xref:System.Windows.Controls.ItemsPresenter displays each item in the xref:System.Windows.Controls.ContextMenu; the xref:System.Windows.Controls.ScrollViewer enables scrolling within the control). If the xref:System.Windows.Controls.ItemsPresenter is not the direct child of the xref:System.Windows.Controls.ScrollViewer, you must give the xref:System.Windows.Controls.ItemsPresenter the name, ItemsPresenter.

ContextMenu States

The following table lists the visual states for the xref:System.Windows.Controls.ContextMenu control.

VisualState Name VisualStateGroup Name Description
Valid ValidationStates The control uses the xref:System.Windows.Controls.Validation class and the xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is false.
InvalidFocused ValidationStates The xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is true has the control has focus.
InvalidUnfocused ValidationStates The xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is true has the control does not have focus.

ContextMenu ControlTemplate Example

The following example shows how to define a xref:System.Windows.Controls.ControlTemplate for the xref:System.Windows.Controls.ContextMenu control.

[!code-xamlControlTemplateExamples#ContextMenu]

The xref:System.Windows.Controls.ControlTemplate uses the following resources.

[!code-xamlControlTemplateExamples#Resources]

For the complete sample, see Styling with ControlTemplates Sample.

See also