zoukankan      html  css  js  c++  java
  • winform datagridview表头增加复选框

    winform datagridview表头怎么增加复选框,点击表头的复选框,下面行的复选全选或全未选
    2011-03-08 14:22

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace WindowsFormsApplication1
    {
    publicpartialclass Form1 : Form
    {
    private DataGridView DataGridView1 =new DataGridView();
    private CheckBox CheckBox1 =new CheckBox();

    public Form1()
    {
    InitializeComponent();
    }

    privatevoid Form1_Load(object sender, EventArgs e)
    {
    CheckBox1.CheckedChanged
    += CheckBox1_CheckedChanged;
    DataGridView1.CellPainting
    += DataGridView1_CellPainting;


    this.DataGridView1.AllowUserToResizeRows =false;
    this.DataGridView1.AllowUserToResizeColumns =false;
    this.DataGridView1.Dock = DockStyle.Fill;

    this.DataGridView1.Columns.Add(new DataGridViewCheckBoxColumn());
    this.DataGridView1.Columns.Add("Column2", "Column2");

    for (int i =1; i <=3; i++)
    {
    this.DataGridView1.Rows.Add(0, "Row"+ i.ToString() +" Column2");
    }

    this.CheckBox1.Visible =false;
    this.CheckBox1.Text ="CheckBox";

    this.Controls.Add(DataGridView1);
    this.Controls.Add(CheckBox1);
    }

    privatevoid CheckBox1_CheckedChanged(object send, System.EventArgs e)
    {
    for (int i =0; i <=this.DataGridView1.RowCount -1; i++)
    {
    this.DataGridView1.Rows.SharedRow(i).SetValues(CheckBox1.Checked);
    }
    }

    privatevoid DataGridView1_CellPainting(object sender, System.Windows.Forms.DataGridViewCellPaintingEventArgs e)
    {
    if (e.RowIndex ==-1& e.ColumnIndex ==0)
    {
    Point p
    =this.DataGridView1.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, true).Location;
    p.Offset(
    this.DataGridView1.Left, this.DataGridView1.Top);
    this.CheckBox1.Location = p;
    this.CheckBox1.Size =this.DataGridView1.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Size;
    this.CheckBox1.Visible =true;
    this.CheckBox1.BringToFront();
    }
    }

    }
    }

  • 相关阅读:
    SpringMVC处理请求
    SpringMVC的启动
    数据结构
    Collections工具类
    位运算
    web应用
    spring Environment
    servlet及jsp之间的请求转发
    spring AOP
    Spring 事件
  • 原文地址:https://www.cnblogs.com/moss_tan_jun/p/2122053.html
Copyright © 2011-2022 走看看