You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已打开ContextMenu时右键打开新菜单,Close事件不触发

问题:WPF上下文菜单切换时Closing/Closed事件不触发

原本以为项目中存在逻辑错误,于是创建了一个仅包含以下代码的新项目:

<Window>
<Grid>
    <TreeView>
        <TreeViewItem Header="Test1"/>
        <TreeViewItem Header="Test2"/>
        <TreeViewItem Header="Test3"/>
        <TreeViewItem Header="Test4"/>
        <TreeView.Resources>
            <ContextMenu x:Key="TreeViewContextMenu">
                <MenuItem Header="Click Me!"/>
            </ContextMenu>
            <Style TargetType="TreeViewItem">
                <Setter Property="ContextMenu" Value="{StaticResource TreeViewContextMenu}"/>
                <EventSetter Event="ContextMenuOpening" Handler="TreeViewContextMenu_Opening"/>
                <EventSetter Event="ContextMenuClosing" Handler="TreeViewContextMenu_Closing"/>
            </Style>
        </TreeView.Resources>   
    </TreeView>
</Grid>
</Window>

当前问题:当已有ContextMenu处于打开状态时,右键点击其他TreeViewItem打开新菜单,无论将事件处理器绑定到ContextMenu、TreeViewItem还是TreeView,Closing/Closed事件都不会触发。但按住右键不放或用左键点击关闭菜单时,事件能正常触发。

内容的提问来源于stack exchange,提问作者CruleD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 14:25:09