Команда на TreeView MenuItem - PullRequest
0 голосов
/ 22 июня 2019

Я хочу создать древовидную структуру, у которой есть контекстное меню с Копировать menuItem и, когда пользователь нажмет Ctrl + C, также выполнить Копировать menuItem Я хочу сделать это только с помощью XAML и commandBindings. Кроме того, я не хочу дублировать CommandBindings в двух местах, и я хочу привязывать их везде, где я хочу.

    <TreeView Grid.Row="1" Grid.Column="2" Name="TrvFileObjects" ItemsSource="{Binding}" Background="Beige">
        <TreeView.ItemTemplate>
            <HierarchicalDataTemplate ItemsSource="{Binding Path=Directories}" DataType="public:Directory">
                <Border BorderBrush="BurlyWood" BorderThickness="1">
                    <TextBlock Text="{Binding Path=Name}" >

                        <TextBlock.InputBindings>
                            <KeyBinding Key="C"
                                        Modifiers="Ctrl"
                                        Command="Copy"/>
                        </TextBlock.InputBindings>
                        <TextBlock.CommandBindings>
                            <CommandBinding x:Name="Copy" Command="Copy"
                                            Executed="CopyDirectory_OnClick" 
                                            CanExecute="CopyDirectory_OnCanExecute"/>
                        </TextBlock.CommandBindings>
                        <TextBlock.ContextMenu>
                            <ContextMenu>
                                <MenuItem Command="Copy" Header ="Copy">

                                </MenuItem>

                            </ContextMenu>
                        </TextBlock.ContextMenu>

                    </TextBlock>
                </Border>
            </HierarchicalDataTemplate>
        </TreeView.ItemTemplate>
    </TreeView>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...