wpf - 如何强制关闭 ContextMenu(WPF 项目)?

标签 wpf xaml popup contextmenu

我有一个带有项目的 ListBox,并为它分配了一个带有三个菜单项的 ContextMenu。除了其中一个菜单项启动一个冗长的操作外,一切都正常。我想从处理程序中关闭 ContextMenu,并可能显示一个沙漏光标或其他东西。

可以做到吗?或者,我应该使用弹出窗口吗?如果是这样,我如何使用 Popup 代替 ContextMenu?我的假设是我必须完全管理它 - 位置和生命周期。

谢谢!

最佳答案

你想要的是:

myContextMenu.IsOpen = false;

请务必在冗长的操作发生之前调用它。根据您的操作,您可能需要考虑通过在另一个线程上执行操作来使其异步 - 这样,您就不会停止应用程序线程。

关于wpf - 如何强制关闭 ContextMenu(WPF 项目)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2820610/

相关文章:

c# - 路由附加事件 WPF/MVVM 后丢失 EventArgs

wpf - 在 XAML 中设置样式的 ControlTemplate 的属性

css - 使用绝对定位时无法显示全高

post - 如何让谷歌分析计数弹出帖子

c# - 阻止 WPF InkBrush 引起滚动事件

c# - 如何通过 WPF Path 对象单击保持 MVVM 模式?

c# - 是否可以将 Property Changed 实现为 Attribute?

c# - MVVM 绑定(bind)在设计时不起作用

wpf - 按资源中的样式指定网格列和行定义

popup - Chrome 扩展弹出页面链接不起作用