当另一个 ContextMenu 打开时,ContextMenu 关闭事件不会触发

问题描述 投票:0回答:1
c# .net wpf contextmenu
1个回答
0
投票

您是否知道让多个 TreeViewItem 共享一个 ContextMenu?我看不出有什么充分的理由这样做。您的 TreeView 应进行如下修改。

<TreeView>
    <TreeViewItem Header="Test1"/>
    <TreeViewItem Header="Test2"/>
    <TreeViewItem Header="Test3"/>
    <TreeViewItem Header="Test4"/>
    <TreeView.Resources>
        <Style TargetType="TreeViewItem">
            <Setter Property="ContextMenu">
                <Setter.Value>
                    <ContextMenu>
                        <MenuItem Header="Click Me!"/>
                    </ContextMenu>
                </Setter.Value>
            </Setter>
            <EventSetter Event="ContextMenuOpening" Handler="TreeViewContextMenu_Opening"/>
            <EventSetter Event="ContextMenuClosing" Handler="TreeViewContextMenu_Closing"/>
        </Style>
    </TreeView.Resources>
</TreeView>
© www.soinside.com 2019 - 2024. All rights reserved.