This documentation is archived and is not being maintained.

ContextMenu.PlacementTarget Property

Gets or sets the UIElement relative to which the ContextMenu is positioned when it opens.

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)

public UIElement PlacementTarget { get; set; }
    <UIElement .../>

Property Value

Type: System.Windows.UIElement
The element relative to which the ContextMenu is positioned when it opens. The default is null.

Identifier field


Metadata properties set to true


When the ContextMenu is assigned to the FrameworkElement.ContextMenu or FrameworkContentElement.ContextMenu property, the ContextMenuService changes this value of this property to the owning FrameworkElement or FrameworkContentElement when the ContextMenu opens. To use a different UIElement, set the ContextMenuService.PlacementTarget property.

The target of a ContextMenu is its parent. The following examples show how to use the PlacementTarget property to find the parent of a ContextMenu.

ContextMenu cm = (ContextMenu)sender;
target = cm.PlacementTarget;

ContextMenu cm = (ContextMenu)ContextMenu.ItemsControlFromItemContainer                   ((MenuItem)e.OriginalSource);
UIElement placementTarget = cm.PlacementTarget;

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.