DataGrid添加CheckBoxColumn绑定到Command自我实现

要求:DataGrid的CheckBox列单击任CheckBox可以绑定到后台Command,并且单击就能改变
(默认的DataGridCheckBoxColumn需要单击二次,才有勾选,否选效果)

在尝试了自定义CellEditTemplate,DataGridCheckBoxColumn之后选择下面的方法

1,问题Mode=TwoWay,在CellTemplate不起做用 ,所以在后台Command,要赋值,才能达到最终效果

<DataGridTemplateColumn CanUserSort="False" HeaderStyle="{DynamicResource chkAll}" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelect, Mode=OneWay}"
Command="{Binding DataContext.SingleJobSelectCommand,
RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
CommandParameter="{Binding}"
HorizontalAlignment="Center" VerticalAlignment="Center" >
</CheckBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

更多相关文章
  • 今天的博客将介绍如何实现ListViewItem双击事件绑定到ViewModel中的Command.实现方法借助了Style中的EventSetter,请看下面的详细代码: ,,, , , , , , ) }); EditCommand = new DelegateCommand(Edit); } ...
  • 项目中用到DataGrid, 需要在第一列添加checkbox, 可以多选.全选.其中涉及的概念DataTemplate, DataGridCellStyle, DataGridCellControlTemplate,Binding, OnPropertyChanged等.有下面是实现思路:1.继承 ...
  • linux网卡别名的添加和绑定RHEL6
    网卡别名的配置: 这个和ifconfig临时修改网卡ip 差不多,但是不一样.都是临时的,只要重启电脑就没了. 配永久的ip别名: cp ifcfg-eth0  ifcfg-eth0:0 vim ifcfg-eth0:0 这样做也能出来,对不对就不知道了 重启网络就ok了 网卡的绑定:虚拟机为2块网 ...
  • 上一篇我们提到如何让“讲述人”读出自定义的CanReadGrid,但“讲述人”仍然无法识别CanReadGrid上绑定的Command.XAML代码如下: <StackPanel> <TextBlock Text="{x:Bind Title,Mode=OneWay}&q ...
  • 继上节所讲,在上一节中,我们讲述了DataGrid绑定webService传输过来的XML数据实体类集合.在本节我们将这个DataGrid移动到 一个ChildWindow中去.然后实现ChildWindow的弹出效果.以及对这个DataGrid的分页效果.实例源代码也是在上一节的基础上做 一些改动 ...
  • 事件是WPF/SL应用程序中UI与后台代码进行交互的最主要方式,与传统方式不同,mvvm中主要通过绑定到命令来进行事件的处理,因此要了解mvvm中处理事件的方式,就必须先熟悉命令的工作原理. 一.RelayCommand命令WPF/SL命令是通过实现 ICommand 接口创建的. ICommand ...
  • 1.安装组件   yum install perl-Time-HiRes rrdtool  rrdtool-perl2.安装pnp4nagios-0.6.24   wget http://jaist.dl.sourceforge.net/project/pnp4nagios/PNP-0.6/pnp4 ...
  • VLAN网卡绑定
    原创作品,允许转载,转载时请务必以超链接形式标明文章 软件环境:broadcom网卡 windows 2003 windows 2008 Dotnet3.5 broadcom 管理软件BACSintel 网卡 windows 2003 windows 2008 最新驱动包hp服务器 最新驱动包,hp ...
一周排行
  • 前端工程师如何和设计师沟通
    摘要: 文章背景,来自于群内周五晚上的一次头脑风暴式的思维碰撞交流活动. 文章版权属于群内 ...
  • angularjs使用$http.delete()发送请求,默认是没法通过变量来传参数
  • 当你的才华还撑不起你的野心时,那你就应该静下心来学习,当你的能力还驾驭不了你的目标时,那就应该沉下心来历练.当你对未来迷茫时,请停下来认准目标!梦想,不是浮云,而是沉淀和积累!只有拼出来的美丽没有等出来的辉煌!机会永 ...
  •    今天收到一份扩展名为docx的文件,原本以为是谁不小心在doc后面加了个x的,把x去掉后准备用word打开~居然是乱码~,上网一搜,原来docx是word2007的文件~太落伍了~居然不知道~_~!   然后又 ...
  • SVN学习记录
    1.版本控制发展史 本地:在本地采用某种简单的数据库来记录文件的更改差异,不支持多人协作 ...
  • cactiez----监控windows主机server2008r2
    监控一台Windows主机,需要在被监控的主机上安装"简单网络管理协议" ...
  •     晚上心血来潮就ctrl+alt+f2进入了tty2控制台,登录用户时密码没错,但是一闪而过出现了Module is unknown 错误,之后改登录等级为3,进入文字界面,问题依旧...    google了 ...
  •  一:什么是maven?    1:我的理解是:maven类似ant,用来编译(compile).发布(deploy).打包(package)java项目的自动化工具!    1:它的优势是:1:jar包的依赖的自动 ...
  • 进入单用户模式-s –v /sbin/fsck -fy /sbin/mount -uw / passwd root touch /var/db/.AppleSetupDone reboot
  • 从零开始学Swift学习笔记Day51——扩展构造函数
    原创文章,欢迎转载.转载请注明:关东升的博客扩展类型的时候,也可以添加新的构造函数.值类型 ...