DateGridView标题列头添加复选框

第一:添加列标题时,添加两个空格——用于显示复选框;

第二:实现列标题添加复选框,代码如下:

private void AddCheckeBoxToDGVHeader(DataGridView dgv)
        {
            for (int i = 0; i < this.dgvList.Columns.Count; i++)
            {
                System.Windows.Forms.CheckBox ckBox = new System.Windows.Forms.CheckBox();
                //ckBox.Text = "全选";
                ckBox.Checked = true;
                System.Drawing.Rectangle rect =
                    dgv.GetCellDisplayRectangle(i, -1, false);
                ckBox.Size = new System.Drawing.Size(25, 25);

                ckBox.Location = rect.Location;
                ckBox.Padding = new System.Windows.Forms.Padding(2, 6, 0, 0);
                ckBox.BackColor = Color.Transparent;
                ckBox.Name = dgv.Columns[i].Name;
                ckBox.CheckedChanged += new EventHandler(ckBox_CheckedChanged);

                dgv.Controls.Add(ckBox);
            }
        }

   void ckBox_CheckedChanged(object sender, EventArgs e)
        {
            CheckBox chb = sender as CheckBox;
            MessageBox.Show("Test=="+ chb.Name);
        }

运行效果如下:

原文地址:https://www.cnblogs.com/YYkun/p/9186949.html

时间: 2024-11-08 19:39:39

DateGridView标题列头添加复选框的相关文章

GridPanel列头带有复选框的列

由于工作需要,封装了ExtJS4,GridPanel列头带有复选框的列, 代码如下: 1 /** 2 * 列头带有复选框的列 3 * 4 */ 5 Ext.define("org.pine.widget.CheckBoxColumn", { 6 extend : "Ext.grid.column.Column", 7 xtype : 'xcc_cfets_checkboxcolumn', 8 requires:[ 9 ], 10 /** 属性定义 */ 11 con

实现在DevExpress.XtraGrid.GridControl的列头绘制复选框以实现全选的功能

首先新建一个Win Form测试项目,拖一个GridControl控件到窗体上. 1 public partial class Form1 : Form 2 { 3 public Form1() 4 { 5 InitializeComponent(); 6 } 7 8 private Rectangle checkBoxColumnHeaderRect = Rectangle.Empty; 9 private GridColumn checkBoxColumn = null; 10 privat

组合框里添加复选框的方法(使用勾选的假象,用图片代替而已,并非QT原生支持)

组合框可以看作是列表框和文本框的组合,因其占据的空间少,使用操作方便,常被界面设计人员用于界面开发设计中,在有限个输入的条件下,组合框常用来代替文本框,这样从用户使用角度来看,更趋人性化,所见即所得.然好的控件永远敢不上应用的步伐,有时常规控件并不能满足应用的需要,经常需要在现有的控件上做扩展.有些应用需要在组合框的列表框的每一项前加复选框,以便可以控制列表框每一项的状态(选中还是未选中),显然现有的组合框(列表框+文本框的组合)不能满足应用要求.那么怎么得到一个超强组合框(列表框+文本框+复选

QListWidget的QComboBox下拉列表添加复选框及消息处理

要在QComboBox下拉列表项中添加复选框,并进行消息处理,在网上搜索了很久没有找到太多有用的信息和实际的例子,但从中还是找到了一些提示性的资料,根据这些简短的介绍,最终实现了这个功能. QComboBox有一个setView的方法,因此,可以自定义的一个视图类,将复选框在视图中实现,本例自定义视图类继承于QListWidget,因为在该视图类中,有一个setItemWidget方法,可以直接将QCheckBox附加在QListWidgetItem项上. 具体看下面得的示例: //QCombo

ajax动态添加复选框

1 function getLands() { 2 3 $.ajax({ 4 url:"httpserver.do?doPost&userQygs="+$("#userQygs").val(), 5 type:"POST", 6 dataType:"text", 7 8 success:function(data){ 9 10 if(data==null||data==""){ 11 12 aler

dojo:为数据表格添加复选框

一.添加复选框 此时应该选用EnhancedGrid,而不是普通的DataGrid.添加复选框需要设置EnhancedGrid的plugins属性,如下: gridLayout =[{ defaultCell: { type: cells._Widget, styles: 'text-align: center;' }, cells: [ { name: "WBS", field: "wbsCode", width: "60px"}, { nam

gridview列前加复选框需要注意的一点

前言 获取gridview每一列前面的复选框,然后获取选中的这一行的id.aspx页面,我不喜欢用这个,有的公司用自己封装的,基本上都是用封装的,这是我知道的.也有用Repeater的.可能是因为gridview微软该给提供的都提供了吧.很强大,不该要的也有了.废话说了不少,说说我自己做的时候问题吧. 过程 自己简单实现了一些,只是为了说明注意的那个问题. 前台代码 后置代码: 总结 我就考虑到绑定数据和获取checkbox是否被选中,数据显示出来了,这没问题了,然后就获取复选框的代码也对.但是

C#ListView控件添加复选框并获取选中的数目

1.添加复选框:listView1.CheckBoxes = true; 2.选中listview并获取选中的数目: private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e) { e.Item.Selected = e.Item.Checked; m = listView1.CheckedItems.Count; label1.Text = "当前选中数:" + m.ToString(); } 说

Js动态添加复选框Checkbox的实例方法!!!

首先,使用JS动态产生Checkbox可以采用如下类似的语句: var checkBox=document.createElement("input"); checkBox.setAttribute("type","checkbox"); checkBox.setAttribute("id",'123456'); 但是,这样产生的checkbox是不带尾后的文字的,如果需要添加,那么需要使用 document.createTe