0

TreeViewItems に ContextMenu を持つ TreeView があります。TreeViewItems を右クリックすると、contextMenu が非常にうまく表示されます。しかし、ContextMenu を親アイテムに表示したくありません。子ノードにのみ表示されます。TreeView には階層が 1 つしかありません。つまり、N 人の親が M 人の子をすべて同じレベルに持つことになります。これは、TreeView と ContextMenu の XAML です。

   <TreeView Margin="2,0,0,0"  ItemsSource="{Binding SourceData}" Width="390">
        <TreeView.ItemContainerStyle >
            <Style TargetType="{x:Type TreeViewItem}">
                  <Setter Property="IsSelected" Value="{Binding DataContext.IsSelected, Mode=TwoWay,  RelativeSource={RelativeSource Self}}" />
                      <Setter Property="ContextMenu">
                                <Setter.Value>
                                    <ContextMenu Name="contextMenu" DataContext="{Binding PlacementTarget.DataContext, RelativeSource={RelativeSource Self}}" >
                                        <MenuItem Name="menuItem" Header="Rename" Command="{Binding RenameCommand}" />
                                    </ContextMenu>
                     </Setter.Value>
                </Setter>
                <Style.Triggers>
                        <Trigger Property="IsSelected" Value="True">
                         </Trigger>
                </Style.Triggers>
                        </Style>
   </TreeView.ItemContainerStyle >

4

0 に答える 0