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>
MVVM 下 ContextMenu的命令绑定相关推荐
- Windows下,ARP命令绑定MAC地址失败的解决方法
前言 关于ARP 在局域网中,网络设备的IP和MAC是对应的. 有些病毒.木马程序会伪造IP和MAC地址的对应关系,让本该发送给其它设备的信息,发送给自己,以此窃取数据,或者破坏网络!有一些网络管理工 ...
- MVVM下拉框绑定触发事件
开发工具与关键技术:MVVM 撰写时间:2021年06月15日 在MVVM中下拉框的绑定跟MVC的下拉框绑定基本一样,只不过在MVVM中要写多一步声明下拉框的属性来接收数据. 首先我们要在DAL层写查 ...
- C#使用Xamarin开发可移植移动应用(4.进阶篇MVVM双向绑定和命令绑定)附源码
今天的学习内容? 今天我们讲讲Xamarin中的MVVM双向绑定,嗯..需要有一定的MVVM基础.,具体什么是MVVM - -,请百度,我就不多讲了 效果如下: 正文 1.简单的入门Demo 这个时间 ...
- WPF MVVM下用户控件的Visibility属性绑定问题
现象:发现用户控件 通过 MVVM 绑定 Visibility 属性 没有效果,发现问题由下面代码产生: 绑定的 Visibility 属性没有效果, 注释该代码后 MVVM下绑定Visibility ...
- WPF 命令绑定的各种方式
WPF 命令绑定的各种方式 引言 在WPF开发过程中,不得不学习的就是MVVM模式.但是在MVVM中又绕不开命令(Command)的使用.下面通过几种方式介绍我了解的WPF命令绑定方式. 如何使用 控 ...
- windows下的cmd命令(全面)
2019独角兽企业重金招聘Python工程师标准>>> 命令提示符是在操作系统中,提示进行命令输入的一种工作提示符.在不同的操作系统环境下,命令提示符各不相同. 在windows环境 ...
- HierarchicalDataTemplate中的ContextMenu的Command绑定
<ContextMenu x:Key="ModeMenu"> <MenuItem Header="添加" Command="{Bin ...
- Window平台下通过cmd命令查看端口占用、查看进程、结束进程
Window平台下通过cmd命令查看端口占用.查看进程.结束进程 一.概述: (更好的阅读体验,请移步我的个人博客)在学习进程间通讯的时候,我们知道有一种通讯方式叫做socket.对于跨主机之间的进程 ...
- Windows命令行下常用网络命令解释大全
命令行下常用网络命令解释大全 1.Arp 显示和修改"地址解析协议"(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表.该命令只有在安装了 TCP/IP 协议之后才可用. ...
最新文章
- 如何解决组织协同?用智办事更简单!
- R绘制面积图(area plot)
- linux 7个运行级别 runlevel 简介
- linux mysql cpu 高,Linux系统中关于Mysql数据库导致CPU很高的问题解决
- 让Windows 8 / 8.1 以及 Windows Server 2012 / 2012 R2的桌面,显示我的电脑图标
- ios 中的基本算数函数
- 自定义scoll样式
- c 语言开发一个四则运算器,C++实现四则运算器(无括号)
- PTA-7-5 打印杨辉三角 (20分)(C语言)
- Android Permission访问权限许可
- 外部方法调用内部_实战经验:通过类成员函数指针实现类方法调用
- z17刷miui_努比亚Z17刷机包
- 电影整站程序 - webplayer9 p2p视频点播 - 电影整站系统 全部ASP源代码
- 从NLP任务中文本向量的降维问题,引出LSH(Locality Sensitive Hash 局部敏感哈希)算法及其思想的讨论...
- 瞅瞅Levels.fyi发布的2020年度程序员收入报告
- 前方高能!阿里云双11拼团百团大战已开启!
- 用批处理文件替换或删除文件名中的字符
- KD7440八通道安规综合测试仪
- 开放式激光振镜运动控制器(五):ZMC408SCAN光纤激光器的能量控制
- 【算法练习】LeetCode-2322. 从树中删除边的最小分数