Red de conocimiento informático - Problemas con los teléfonos móviles - Visual C# WindowsForm cómo agregar casillas de verificación a datagridview

Visual C# WindowsForm cómo agregar casillas de verificación a datagridview

¿Cómo agregar una casilla de verificación al encabezado de la tabla winform datagridview? Haga clic en la casilla de verificación en el encabezado de la tabla y seleccione todas o ninguna de las comprobaciones en las siguientes filas

usando System;

usando System.Collections.Generic;

usando System.ComponentModel;

usando System.Data;

usando System.Drawing;

usando System.Linq;

usando System.Text;

usando System.Windows.Forms;

espacio de nombres WindowsFormsApplication1

{

clase públicapartial1: Formulario

{

DataGridView privado DataGridView1 =nuevo DataGridView();

CheckBox privado CheckBox1 =nueva casilla de verificación( );

Form1 público()

{

InitializeComponent();

}

privatevoid Form1_Load( remitente del objeto, 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("Columna2", "Columna2");

for (int i = 1; i < =3; i++)

{

this.DataGridView1.Rows.Add(0, "Fila"+ i.ToString() +" Columna2");

}

this.CheckBox1.Visible =false;

this.CheckBox1.Text ="CheckBox";

this.Controls. Add(DataGridView1) ;

this.Controls.Add(CheckBox1);

}

privatevoid CheckBox1_CheckedChanged(objeto enviado, System.EventArgs e)

{

para (int i =0; i <=this.DataGr

idView1.RowCount -1; i++)

{

this.DataGridView1.Rows.SharedRow(i).SetValues(CheckBox1.Checked);

}

}

privatevoid DataGridView1_CellPainting(remitente del objeto, System.Windows.Forms.DataGridViewCellPaintingEventArgs e)

{

if (e.RowIndex = =-1& e.ColumnIndex ==0)

{

Punto 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).Tamaño;

this.CheckBox1.Visible =true;

this.CheckBox1.BringToFront(); p>

}

}

}

}