WPF之ContextMenu的命定绑定
在WPF中右击菜单项的XMAL代码是:
<ContextMenu x:Key="sampleContextMenu">
<MenuItem Header="在前面插入行" Click="InsertRowFront_Click"/>
<MenuItem Header="在后面插入行" Click="InsertRowBehind_Click"/>
<MenuItem Header="删除行" Click="DeleteRow_Click"/>
<MenuItem Header="debug1" Command="{Binding cmd1}"/>
</ContextMenu>
比如想在TEXTBOX中右击时候出现菜单,只需有在TEXTBOX中使用
<TextBox x:Name="textBoxName" Text="{Binding textValue,Mode=TwoWay}" Width="75" Height="36" ContextMenu="{StaticResource sampleContextMenu}" Style="{DynamicResource TextBoxStyle1}"/>
然后以上代码如果是在<UserControl>标签中使用的话,使用Click绑定的函数只能定义在<UserControl>的后台代码中,如果使用Command绑定的话,不管命定定义在<UserControl>还是引用<UserControl>的<Window>的后台代码中,都无法有效绑定,经过多次尝试,我在XMAL中引入MainWindow,将命定cmd1定义在Mainwindow的后台代码中
<local:MainWindow x:Key="dataContextProxy"/>
然后将菜单代码改为 <MenuItem Header="debug1" Command="{Binding cmd1,Source={StaticResource dataContextProxy}}"/>
发现有效使用命令。
之前我在<UserControl>的后台代码中定义命定使用this.DataContext=this,无法有效绑定命定,在<MainWindow>d的后台代码中定义命定并将UserControl的DataContext指向MainWindow同样无效。至于为什么会出现这种情况,等以后有时间慢慢研究。。
至于为何会出现这种情况,还等以后有时间慢慢研究。
WPF之ContextMenu的命定绑定的更多相关文章
- WPF中ContextMenu(右键菜单)使用Command在部分控件上默认为灰色的处理方法
原文:WPF中ContextMenu(右键菜单)使用Command在部分控件上默认为灰色的处理方法 问题描述 今天发现如果我想在一个TextBlock弄一个右键菜单,并且使用Command绑定,结果发 ...
- WPF Datagrid 动态生成列 并绑定数据
原文:WPF Datagrid 动态生成列 并绑定数据 说的是这里 因为列头是动态加载的 (后台for循环 一会能看到代码) 数据来源于左侧列 左侧列数据源 当然num1 属于临时的dome使用 可 ...
- WPF DataGrid某列使用多绑定后该列排序失效,列上加入 SortMemberPath 设置即可.
WPF DataGrid某列使用多绑定后该列排序失效 2011-07-14 10:59hdongq | 浏览 1031 次 悬赏:20 在wpf的datagrid中某一列使用了多绑定,但是该列排序失 ...
- CYQ.Data 支持WPF相关的数据控件绑定.Net获取iis版本
CYQ.Data 支持WPF相关的数据控件绑定(2013-08-09) 事件的结果 经过多天的思考及忙碌的开发及测试,CYQ.Data 终于在UI上全面支持WPF,至此,CYQ.Data 已经可以方便 ...
- WPF中的命令与命令绑定导航
1.WPF中的命令与命令绑定(一) (引入命令) 2.WPF中的命令与命令绑定(二)(详细介绍命令和命令绑定)
- WPF中的命令与命令绑定(二)
原文:WPF中的命令与命令绑定(二) WPF中的命令与命令绑定(二) 周银辉在WPF中,命令(Commandi ...
- WPF中的命令与命令绑定(一)
原文:WPF中的命令与命令绑定(一) WPF中的命令与命令绑定(一) 周银辉说到用户输入,可能我们更多地会联想到 ...
- WPF dataGrid下的ComboBox的绑定
WPF dataGrid下的ComboBox的绑定 Wpf中dataGrid中的某列是comboBox解决这个问题费了不少时间,不废话了直接上代码 xaml 代码 <DataGridTempla ...
- 【转】解决WPF图片模糊最佳方法(绑定PixelWidth与PixelHeight)
解决WPF图片模糊最佳方法(绑定PixelWidth与PixelHeight) 转载自:http://www.360doc.com/content/13/1126/09/10504424_332211 ...
随机推荐
- 面对 to B 业务该如何构建研发管理体系?
未来离我们越来越近,而过去并未走远,我们发现科技公司2B业务兴起,腾讯认为互联网下半场属于产业互联网,需要进行一次重要的战略升级.它们在国庆节最后一天进行新一轮组织架构调整,最亮眼的就是新成立云与智慧 ...
- 函数的调用规则(__cdecl,__stdcall,__fastcall,__pascal)
关于函数的调用规则(调用约定),大多数时候是不需要了解的,但是如果需要跨语言的编程,比如VC写的dll要delphi调用,则需要了解. microsoft的vc默认的是__cdecl方式,而windo ...
- iOS获取某个日期后n个月的日期
一.给一个时间,给一个数,正数是以后n个月,负数是前n个月: -(NSDate *)getPriousorLaterDateFromDate:(NSDate *)date withMonth:(NSI ...
- 测试 js 方法运行时间
早期测速的时候是这样的,呵呵呵,一开始还挺爽的 function testFunctionTime(fn) { var start = new Date().getTime(); if (fn) fn ...
- java异常和错误类总结(2016.5)
看到以前2016.5.写的一点笔记,拿过来放在一起. java异常和错误类总结 最近由于考试和以前的面试经常会遇到java当中异常类的继承层次的问题,弄得非常头大,因为java的异常实在是有点多,很难 ...
- 增强织梦DedeCMS“更新系统缓存”清理沉余缓存的功能
我们使用织梦DedeCMS系统有很长一段时间后,不间断的在后台更新系统缓存的时候,有些缓存文件夹及缓存文件没有被清理,导致日积月累的垃圾缓存文件越来越多,可以以百千万计算,现在增强更新系统缓存功能清理 ...
- Flume-NG启动过程源码分析(三)(原创)
上一篇文章分析了Flume如何加载配置文件的,动态加载也只是重复运行getConfiguration(). 本篇分析加载配置文件后各个组件是如何运行的? 加载完配置文件订阅者Application类会 ...
- FMX.TTabControl_多行
1. 重载 TTabControl.RealignTabs; 2. 3.
- nova rebuild
nova rebuild¶ usage: nova rebuild [--rebuild-password <rebuild-password>] [--poll] [--minimal] ...
- struts学习(3)
1 ognl概述 2 ognl入门案例 3 什么是值栈 (1)servlet和action区别 (2)值栈存储位置 4 如何获取值栈对象 5 值栈内部结构 6 向值栈放数据 (1)s:debug标签 ...