wpf--------------datagrid全选反选 多选进行删除操作 前后台
- <DataGrid.Columns>
- <DataGridTemplateColumn >
- <DataGridTemplateColumn.HeaderTemplate>
- <DataTemplate>
- <CheckBox Click="HeaderCellLoad" Content="全选" IsChecked="False" Unchecked="UnChoice_Checked" Checked="Choice_Checked"></CheckBox>
- </DataTemplate>
- </DataGridTemplateColumn.HeaderTemplate>
- <DataGridTemplateColumn.CellTemplate>
- <DataTemplate>
- <CheckBox Click="checkbox_checked" HorizontalAlignment="Center" x:Name="Choices" IsChecked="{Binding CHOICE, Mode=TwoWay}" VerticalAlignment="Center" />
- </DataTemplate>
- </DataGridTemplateColumn.CellTemplate>
- </DataGridTemplateColumn>
- <DataGridTextColumn Header="商品条码" Binding="{Binding commodity_barcode}" Width="20*" HeaderStyle="{StaticResource ColumnHeaderStyle}"/>
- <DataGridTextColumn Header="商品名称" Binding="{Binding commodity_name}" Width="18*" HeaderStyle="{StaticResource ColumnHeaderStyle}"/>
- <DataGridTextColumn Header="单位" Binding="{Binding commodity_unit}" Width="10*" HeaderStyle="{StaticResource ColumnHeaderStyle}"/>
- <DataGridTextColumn Header="规格" Binding="{Binding commodity_rule}" Width="10*" HeaderStyle="{StaticResource ColumnHeaderStyle}"/>
- <DataGridTextColumn Header="售价" Binding="{Binding commodity_retailprice}" Width="10*" HeaderStyle="{StaticResource ColumnHeaderStyle}" />
- <DataGridTextColumn Header="会员价" Binding="{Binding commodity_memberprice}" Width="10*" HeaderStyle="{StaticResource ColumnHeaderStyle}"/>
- <DataGridTemplateColumn Header="操作" Width="10*">
- <DataGridTemplateColumn.CellTemplate>
- <DataTemplate>
- <StackPanel Orientation="Horizontal">
- <Button Content="修改" Click="Update_Click" Margin="15,0,5,0" >
- <Button.Template>
- <ControlTemplate TargetType="Button">
- <TextBlock TextDecorations="Underline" Name="btnInput" >
- <ContentPresenter />
- </TextBlock>
- </ControlTemplate>
- </Button.Template>
- <Button.Style>
- <Style TargetType="Button">
- <Setter Property="Foreground" Value="Blue" />
- <Style.Triggers>
- <Trigger Property="IsMouseOver" Value="true">
- <Setter Property="Foreground" Value="Red" />
- </Trigger>
- </Style.Triggers>
- </Style>
- </Button.Style>
- </Button>
- <Button Content="删除" Click="Delete_Click" Margin="15,0,5,0">
- <Button.Template>
- <ControlTemplate TargetType="Button">
- <TextBlock TextDecorations="Underline" Name="btnCancel" >
- <ContentPresenter />
- </TextBlock>
- </ControlTemplate>
- </Button.Template>
- <Button.Style>
- <Style TargetType="Button">
- <Setter Property="Foreground" Value="Red" />
- <Style.Triggers>
- <Trigger Property="IsMouseOver" Value="true">
- <Setter Property="Foreground" Value="Red" />
- </Trigger>
- </Style.Triggers>
- </Style>
- </Button.Style>
- </Button>
- </StackPanel>
- </DataTemplate>
- </DataGridTemplateColumn.CellTemplate>
- </DataGridTemplateColumn>
- </DataGrid.Columns>
后台事件
- /// <summary>
- /// Checked UnChecked事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void Choice_Checked(object sender, RoutedEventArgs e)
- {
- DataTable dt = ((DataView)CommodityData.ItemsSource).Table;
- foreach (DataRow row in dt.Rows)
- {
- row["CHOICE"] = "";
- GetCount();
- }
- }
- private void UnChoice_Checked(object sender, RoutedEventArgs e)
- {
- DataTable dt = ((DataView)CommodityData.ItemsSource).Table;
- foreach (DataRow row in dt.Rows)
- {
- row["CHOICE"] = "";
- GetCount();
- }
- }
- private void checkbox_checked(object sender, RoutedEventArgs e)
- {
- //首先获取DataGridTemplateColumn所在列
- DataGridTemplateColumn tempColumn = this.CommodityData.Columns[] as DataGridTemplateColumn;
- //然后获取DataGridTemplateColumn单元格元素
- FrameworkElement element = this.CommodityData.Columns[].GetCellContent(this.CommodityData.Items[CommodityData.SelectedIndex]);
- if (element != null)
- {
- //把单元格元素转换为相应的控件,再从该控件中取值
- System.Windows.Controls.CheckBox ck = tempColumn.CellTemplate.FindName("Choices", element) as System.Windows.Controls.CheckBox;
- if (ck.IsChecked == true)
- {
- DataRowView item = CommodityData.Items[CommodityData.SelectedIndex] as DataRowView;
- DataRow dr = item.Row;
- dr["CHOICE"] = "";
- GetCount();
- }
- else if (ck.IsChecked == false)
- {
- DataRowView item = CommodityData.Items[CommodityData.SelectedIndex] as DataRowView;
- DataRow dr = item.Row;
- dr["CHOICE"] = "";
- GetCount();
- }
- }
- }
-->
-->
wpf--------------datagrid全选反选 多选进行删除操作 前后台的更多相关文章
- JQ实现复选框的全选反选不选
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Android开发 ---基本UI组件5:监听下拉选项,动态绑定下拉选项、全选/反选,取多选按钮的值,长按事件,长按删除,适配器的使用,提示查询数据,activity控制多按钮
效果图: 效果描述: 1.当点击 1 按钮后,进入选择城市的页面,会监听到你选中的城市名称:动态为Spinner绑定数据 2.当点击 2 按钮后,进入自动查询数据页面,只要输入首字母,就会动态查找以该 ...
- JQuery 全选 反选 获取Table 中指定td的元素值
//全选 function initTableCheckbox() { var $thr = $('table thead tr'); var $checkAllTh = $('<th>& ...
- JavaScript、全选反选-课堂笔记
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- PHP基础班初学心得:用JQ实现表单的全选、反选、取消和删除功能
摘要: 本人刚参加PHP基础班培训,由于之前毫无基础,分享的心得可能不规范,方法也许也"旁门左道",不能保证质量,只作自己总结学习,也希望能帮助到同样是初学者的朋友们,共同进步. ...
- 关于input全选反选恶心的异常情况
上一篇讲到:第一次点击全选按钮input显示对勾,第二次则不显示,需要用prop来添加checked属性. 但是用prop会出现一个问题,对勾显示,而checked属性不会被添加(比如:$(" ...
- jQuery全选/反选checkbox
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- python: jquery实现全选 反选 取消
引入这个jquery-1.12.4.js jquery实现全选 反选 取消 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitio ...
- BootStrapt iCheck表单美化插件使用方法详解(含参数、事件等) 全选 反选
特色: 1.在不同浏览器(包括ie6+)和设备上都有相同的表现 — 包括 桌面和移动设备 2.支持触摸设备 — iOS.Android.BlackBerry.Windows Phone等系统 4.方便 ...
随机推荐
- 紫书 例题 10-8 UVa 1262 (暴力枚举)
递归一遍遍历所有情况就ok了 #include<cstdio> #include<cstring> #define REP(i, a, b) for(int i = (a); ...
- Android向unity发送消息
有些时候需要Android向unity发送消息,有两种方法实现,一.通过unity再带的消息机制,二.通过注册回调的方式. 一.通过UnityPlayer.UnitySendMessage():方法 ...
- Ehcache学习总结(2)--Ehcache整合spring配置
首先需要的maven依赖为: [html] view plain copy <!--ehcache--> <dependency> <groupId>com.goo ...
- Spring Cloud学习笔记【四】断路器Hystrix
雪崩效应 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应.服务雪崩效应是一种因 “服务提供者” 的不可用导致 “服务消 ...
- /*+parallel(t,4)*/在SQL调优中的重要作用!
谈谈HINT /*+parallel(t,4)*/在SQL调优中的重要作用! /*+parallel(t,4)*/在大表查询等操作中能够起到良好的效果,基于并行查询要启动并行进程.分配任务与系统资源. ...
- ids for this class must be manually assigned before calling save():Xxx
把Xxx.hbm.xml主键生成策略改成identity
- Spring Tool Suit安装virgo server插件、virgo的下载
virgo-tomcat原先是Spring DM Server,后来转eclipse社区维护 安装教程:http://osgi.com.cn/article/7289514 virgo-tomcat各 ...
- Android 中图能够用到的图片处理类 BitmapUtils
Android在实际开发中非常多时候都要对图片进行一定的处理,这里总结的BitmapUtils 类包含一下几个功能: 1.Android图片倒影, 2.Android图片模糊处理, 3.Android ...
- numpy 数据类型与 Python 原生数据类型
查看 numpy 数据类型和 Python 原生数据类型之间的对应关系: In [51]: dict([(d, type(np.zeros(1,d).tolist()[0])) for d in (n ...
- sql阻塞进程查询
select A.SPID as 被阻塞进程,a.CMD AS 正在执行的操作,b.spid AS 阻塞进程号,b.cmd AS 阻塞进程正在执行的操作 from master..sysprocess ...