如何“窥探”ContextMenu?

15

我有一个使用 CompositeCollection 作为其 ItemsSource 的 ContextMenu。其中一个项(与硬编码的项相反)以不同于其他项的方式显示。

在 XAML 中,我没有看到任何明显的原因,所以我想使用 Snoop 查看实际呈现的样式(并找到差异)。然而,每当我激活 Snoop 窗口来查找上下文菜单时,它就会关闭菜单!

是否有一种方法可以使用 Snoop(或类似工具)检查 ContextMenu

2个回答

15

当用户在打开的 ContextMenu 以外执行任何操作时,它将关闭。这是 ContextMenu 的默认行为,但是 Snoop 在左侧的 Snoop 窗口的 VisualTreeView 中提供有关 ContextMenu 及其 MenuItems 的所有信息。如果您想窥视特定的 ContextMenuItem,请执行以下操作:

  • 将您的应用程序连接到 Snoop
  • 按 Shift+Ctrl 并将鼠标悬停在您要窥视的 ContextMenuItem 上,这将显示一个红色边框。同时,Snoop 窗口的 Treeview 中也会选择相同的控件。

8
  • 在Snoop中选择您的WPF应用程序
  • 打开上下文菜单
  • 按住Shift+Ctrl键并将鼠标指针移动到上下文菜单项之一。

这个有效!感谢您快速、易于理解的回复。 - BradleyDotNET

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接