私は追加するか、私のC#コードでwpfのツリービューのコンテキストメニューを変更したいですか?私はそれを行うことができますか?
回答:
回答№1の場合は3それがなぜ必要なの? コードの背後に影響を与えずに他の方法でやるほうがいいでしょうか?私はビューとロジックが分離されているときに優先しますが、基本的にこれはMVVMのアプローチです。
とにかく、 初期化済み イベントハンドラを使用し、コードの背後でそれを渡すよりも:
XAML:
<TreeView ... />
<TreeView.ContextMenu Initialized="OnTreeViewMenuInitialized">
<MenuItem Header="Add" Command="{Binding AddCommand}" />
</TreeView.ContextMenu>
</TreeView>
コードの背後にある:
private void OnTreeViewMenuInitialized(object sender, EventArgs e)
{
var contextMenu = (ContextMenu)sender;
...
}