您是否知道让多个 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>