MVVM 下 ContextMenu的命令绑定

简介: 原文:MVVM 下 ContextMenu的命令绑定  由于ContextMenu不继承父级的DataContext,所以如果要绑定父级的DataContext,直接DataContext=“{Binding}”是行不通的。
原文: MVVM 下 ContextMenu的命令绑定

  由于ContextMenu不继承父级的DataContext,所以如果要绑定父级的DataContext,直接DataContext=“{Binding}”是行不通的。因此可通过以下两个方式解决绑定的问题。

1、使用资源的方式

 1         <Button Content="Test" Command="{Binding TestCommand}">
 2             <Button.Resources>
 3                 <vm:ThreeViewModel x:Key="Three"/>
 4             </Button.Resources>
 5             <Button.ContextMenu>
 6                 <ContextMenu>
 7                     <MenuItem Header="测试" Command="{Binding TestCommand,Source={StaticResource Three}}"/>
 8                 </ContextMenu>
 9             </Button.ContextMenu>
10         </Button>
11     

 

2、利用ContextMenu的PlacementTarget属性

        <Button Content="Test" Command="{Binding TestCommand}">
            <Button.ContextMenu>
                <ContextMenu>
                    <MenuItem Header="测试" Command="{Binding PlacementTarget.DataContext.TestCommand,  RelativeSource={RelativeSource AncestorType=ContextMenu} }"/>
                </ContextMenu>
            </Button.ContextMenu>
        </Button>

 

目录
相关文章
|
8天前
|
前端开发 UED 开发者
React 对话框组件 Dialog
本文详细介绍了如何在 React 中实现一个功能完备的对话框组件(Dialog),包括基本用法、常见问题及其解决方案,并通过代码案例进行说明。从安装依赖到创建组件、添加样式,再到解决关闭按钮失效、背景点击无效、键盘导航等问题,最后还介绍了如何添加动画效果和处理异步关闭操作。希望本文能帮助你在实际开发中更高效地使用 React 对话框组件。
114 75
|
前端开发 C#
WPF MVVM中在ViewModel中关闭或者打开Window
原文:WPF MVVM中在ViewModel中关闭或者打开Window 这篇博客将介绍在MVVM模式ViewModel中关闭和打开View的方法。 1. ViewModel中关闭View public class MainViewModel { publi...
3393 0
|
JavaScript 编译器
【Vue】利用v-model特性封装Dialog弹窗或可编辑窗口。
【Vue】利用v-model特性封装Dialog弹窗或可编辑窗口。
|
JavaScript
解决 Element-ui中 对话框 (Dialog)中含子组件时,使用 refs 调用该子组件为 undefined 的问题
解决 Element-ui中 对话框 (Dialog)中含子组件时,使用 refs 调用该子组件为 undefined 的问题
767 0
解决 Element-ui中 对话框 (Dialog)中含子组件时,使用 refs 调用该子组件为 undefined 的问题
|
前端开发
RadioButton单选框的绑定问题(MVVM)
RadioButton单选框的绑定问题(MVVM)
|
前端开发
MVVM模式下 DataTemplate 中控件的绑定
原文:MVVM模式下 DataTemplate 中控件的绑定   今天给ListBox中通过DataTemplate生成的Button绑定命令时,一开始Button始终找不到绑定的命令。现找到了正确的绑定方式,特来记录一下。
1791 0
|
前端开发 JavaScript 开发者
在 React 中为按钮绑定点击事件1|学习笔记
快速学习在 React 中为按钮绑定点击事件1
510 0
|
前端开发 开发者
在 React 中为按钮绑定点击事件2|学习笔记
快速学习在 React 中为按钮绑定点击事件2
113 0
|
前端开发 JavaScript
在React中为按钮绑定点击事件
一、React中绑定事件的注意点 二、各案例详解
|
JSON 数据格式
开发kendo-ui弹窗组件
开发kendo-ui弹窗组件