Значение параметра командной строки WPF из кода

#c# #wpf

Вопрос:

Как привязать переменную из кода сзади к параметру CommandParameter?

Фрагмент из древовидного представления WPF MyTreeView.xaml:

 <TreeView.ContextMenu>
    <ContextMenu>
        <MenuItem Header="save items" Command="CommandInMvvmModel" CommandParameter="ParameterInCodeBehind"/>
    </ContextMenu>
</TreeView.ContextMenu>
 

ParameterInCodeBehind-это переменная в файле MyTreeView.xaml.cs

Комментарии:

1. В случае, если это общедоступное свойство класса MyTreeView: CommandParameter="{Binding ParameterInCodeBehind, RelativeSource={RelativeSource AncestorType=MyTreeView}}"

Ответ №1:

Вы можете задать параметр командной строки в коде, указав имя этого элемента меню.

 <TreeView.ContextMenu>
    <ContextMenu>
        <MenuItem x:Name="menu" Header="save items" Command="CommandInMvvmModel" CommandParameter="ParameterInCodeBehind"/>
    </ContextMenu>
</TreeView.ContextMenu>
 

Код за :

 menu.CommandParameter = "value"