PopupMenu 类

定义

表示上下文菜单。

在桌面应用中,在以显示 UI 的方式使用此类实例之前,需要将 对象与其所有者的窗口句柄相关联。 有关详细信息和代码示例,请参阅 显示依赖于 CoreWindow 的 WinRT UI 对象

public ref class PopupMenu sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class PopupMenu final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class PopupMenu final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class PopupMenu
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class PopupMenu
function PopupMenu()
Public NotInheritable Class PopupMenu
继承
Object Platform::Object IInspectable PopupMenu
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

示例

通过为事件添加事件侦听器 "contextmenu" ,为用户提供上下文菜单。 例如, 上下文菜单示例 侦听特定 HTML 元素上的 事件,然后调用 scenario1AttachmentHandler 函数。

document.getElementById("attachment").addEventListener("contextmenu", attachmentHandler, false);

若要自定义上下文菜单,请对 事件调用 preventDefault 以禁止默认菜单,然后创建一个新的空上下文菜单,如 上下文菜单示例中所示。

e.preventDefault(); // Prevent the default context menu.
var menu = new Windows.UI.Popups.PopupMenu();

注解

上下文菜单最多可以显示六个命令。 此限制有助于确保上下文菜单保持整洁、可用且与用户直接相关。

可以在上下文菜单示例 (Windows 10) 和上下文菜单示例 (Windows 8.1) 中看到演示如何创建和自定义上下文菜单的完整代码示例。

对于基于 XAML 的桌面应用程序,我们建议 使用菜单浮出控件来实现上下文菜单

注意

此类不是敏捷类,这意味着需要考虑其线程模型和封送处理行为。 有关详细信息,请参阅线程处理和封送处理 (C++/CX) 在多线程环境中使用 Windows 运行时 对象 (.NET)

构造函数

PopupMenu()

创建 PopupMenu 类的新实例。

在桌面应用中,在以显示 UI 的方式使用此类实例之前,需要将 对象与其所有者的窗口句柄相关联。 有关详细信息和代码示例,请参阅 显示依赖于 CoreWindow 的 WinRT UI 对象

属性

Commands

获取上下文菜单的命令。

方法

ShowAsync(Point)

显示指定客户端坐标处的上下文菜单。

ShowForSelectionAsync(Rect)

显示指定选定内容上方的上下文菜单。

ShowForSelectionAsync(Rect, Placement)

显示相对于指定选定内容的首选位置中的上下文菜单。

适用于

另请参阅