datagridview复选框(Visual C# WindowsForm如何在datagridview中加入复选框)

本文目录
- Visual C# WindowsForm如何在datagridview中加入复选框
- vb.net 在datagridview中增加,修改,删除数据,如何使这种改变(就是前面所说的增,修,删)真正的改变数据库
- c# winform中dataGridView的复选框只能选一个,代码怎么写
- c#根据dataGridView勾选多个checkbox点击删除按钮可以批量删除数据库中的内容
- 在C#的WinForm中,怎么在datagridview中插入复选框
- C# 中的DataGridView控件如何设置成具有复选框功能
- dataGridView怎么在所有行标题上添加复选框
- c#中选中dataGridView的一行或者多行,然后删除数据库对应的数据
Visual C# WindowsForm如何在datagridview中加入复选框
winform datagridview表头怎么增加复选框,点击表头的复选框,下面行的复选全选或全未选
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();
}
}
}
}
vb.net 在datagridview中增加,修改,删除数据,如何使这种改变(就是前面所说的增,修,删)真正的改变数据库
首先你的数据源就写错了
strconn = "Provider =Microsoft.Jet.OLEDB.4.0;Data Source =E:\AccessDataBase\test2000.mdb"
应为
strconn = "Provider =Microsoft.Jet.OLEDB.4.0;Data Source =E:\\AccessDataBase\\test2000.mdb"
绝对路径是"\\",这个要记得。
代码我就不帮你写了,说下我的思路,对于数据库的操作,你只能1步步来做,也就是在dataGridView里做了修改以后就直接在数据库里修改,打个比方,你想在dataGridView里添加数据A再删除数据B,步骤如下:
1.你在dataGridView里添加了数据A
2.打开数据库
3.在相应表下添加A
4.关闭数据库
5.在dataGridView里删除数据B
6.打开数据库
7.在相应表里删除数据B
8.关闭数据库
看起来方法比较复杂,但是数据库的操作必须这样做,而且,记得,打开数据库并操作结束后先关闭数据库再做其他的任务。
c# winform中dataGridView的复选框只能选一个,代码怎么写
//用CellContentClick事件
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) {
if (e.ColumnIndex == 0 && e.RowIndex 》= 0) { //如果选择所属的列是第1列那么 ColumnIndex == 0
foreach (DataGridViewRow row in dataGridView1.Rows) row.Cells.Value = false;
dataGridView1.Rows.Value = true;
}
}
c#根据dataGridView勾选多个checkbox点击删除按钮可以批量删除数据库中的内容
遍历一下,获取到打勾的项目的键,然后拼接成sql语句就是了
遍历一遍,再写一方法,批量删除
private void btnDelete_Click(object sender, EventArgs e)
{
List《DataGridViewRow》 rows = new List《DataGridViewRow》();
foreach (DataGridViewRow row in datagridview.Rows)
{
if (row.Cells.EditedFormattedValue.ToString() == "True")
{
rows.Add(row);
}
}
foreach (DataGridViewRow row in rows)
{
datagridview.Rows.Remove(row);
}
}
在C#的WinForm中,怎么在datagridview中插入复选框
如果是设计的时候设置,添加列的时候ColumnType属性选择DataGridViewCheckBoxColumn
如果是代码添加列,如下:
DataGridViewColumn myCol = new DataGridViewCheckBoxColumn();
myGrid.Columns.Add(myCol);
C# 中的DataGridView控件如何设置成具有复选框功能
《Columns》
《asp:TemplateColumn HeaderText="Checked" HeaderStyle-Width="30"》
《HeaderTemplate》
《input id="chkAllInBox" type="checkbox" onclick="selectAll(’chkAllInBox’,’《%# this.grdList.ClientID %》’)" /》
《/HeaderTemplate》
《ItemTemplate》
《input type="checkbox" id="chids" value=’《%# DataBinder.Eval(Container, "DataItem.ID") %》’
runat="server" name="chids" /》
《/ItemTemplate》
《HeaderStyle Width="30px"》《/HeaderStyle》
《ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False"
Font-Underline="False" HorizontalAlign="Center" /》
《/asp:TemplateColumn》
《asp:BoundColumn DataField="ID" SortExpression="ID" HeaderText="id" Visible="false"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="EventCount" SortExpression="EventCount" HeaderText=’数量’》《/asp:BoundColumn》
《asp:BoundColumn DataField="DomainName" HeaderText="类型" SortExpression="DomainName"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="CalItemName" SortExpression="CalItemName" HeaderText="计算项"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="CalUnitName" SortExpression="CalUnitName" HeaderText="地区或单位"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="EventDesc" SortExpression="EventDesc" HeaderText="事件描述"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="Month" SortExpression="Month" HeaderText="上报月份"》《/asp:BoundColumn》
《asp:BoundColumn DataField="DraftWriter" SortExpression="DraftWriter" HeaderText="填写人"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="DraftWriteTime" SortExpression="DraftWriteTime" HeaderText="填写时间"
DataFormatString=’{0:d}’》《/asp:BoundColumn》
《%--《asp:TemplateColumn》
《HeaderTemplate》
《asp:Label ID="lblPar1Name" runat="server"》《/asp:Label》
《/HeaderTemplate》
《ItemTemplate》
《asp:Label ID="lblPar1" runat="server"》《/asp:Label》
《/ItemTemplate》
《/asp:TemplateColumn》
《asp:TemplateColumn》
《HeaderTemplate》
《asp:Label ID="lblPar2Name" runat="server"》《/asp:Label》
《/HeaderTemplate》
《ItemTemplate》
《asp:Label ID="lblPar2" runat="server"》《/asp:Label》
《/ItemTemplate》
《/asp:TemplateColumn》
《asp:TemplateColumn》
《HeaderTemplate》
《asp:Label ID="lblPar3Name" runat="server"》《/asp:Label》
《/HeaderTemplate》
《ItemTemplate》
《asp:Label ID="lblPar3" runat="server"》《/asp:Label》
《/ItemTemplate》
《/asp:TemplateColumn》--%》
《asp:BoundColumn DataField="Par1" SortExpression="Par1" HeaderText="批次" Visible="False"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="Par2" SortExpression="Par2" HeaderText="Par2" Visible="False"》
《/asp:BoundColumn》
《asp:BoundColumn DataField="Par3" SortExpression="Par3" HeaderText="Par3" Visible="False"》
《/asp:BoundColumn》
《asp:TemplateColumn HeaderStyle-Width="40" ItemStyle-HorizontalAlign="Center" HeaderText=""》
《ItemTemplate》
《asp:HyperLink ID="hlkEditInfo" runat="server" ImageUrl="~/images/edit.gif" NavigateUrl=’《%# EditUrl("ItemId",DataBinder.Eval(Container, "DataItem.ID").ToString(),"Edit") %》’》《/asp:HyperLink》
《/ItemTemplate》
《HeaderStyle Width="40px"》《/HeaderStyle》
《ItemStyle HorizontalAlign="Center"》《/ItemStyle》
《/asp:TemplateColumn》
《asp:TemplateColumn HeaderStyle-Width="40" ItemStyle-HorizontalAlign="Center" HeaderText="删除"》
《ItemTemplate》
《asp:LinkButton runat="server" ID="lbnDelInfo" CommandName="CommandDelete" BorderStyle="None"》
《asp:Image runat="server" ID="imgDelete" BorderStyle="None" ImageUrl="~\images\button_delete.gif"
ImageAlign="AbsMiddle"》《/asp:Image》
《/asp:LinkButton》
《/ItemTemplate》
《HeaderStyle Width="40px"》《/HeaderStyle》
《ItemStyle HorizontalAlign="Center"》《/ItemStyle》
《/asp:TemplateColumn》
《/Columns》
《script language="javascript"》
//全选
function selectAll(SourceID, ControlID) {
var sourceBox = document.getElementById(SourceID);
var theBox = document.all(ControlID);
elm = theBox.getElementsByTagName(’Input’);
for (i = 0; i 《 elm.length; i++) {
if (elm.type == "checkbox") {
elm.checked = sourceBox.checked;
}
}
}
//选择删除检测
function CheckNULL(ControlID) {
var isNULL = false;
var theBox = document.all(ControlID);
elm = theBox.getElementsByTagName(’Input’);
for (var i = 0; i 《 elm.length; i++) {
var e = elm;
if (e.type == "checkbox" && e.checked == true && e.id != "chkAllInBox") {
isNULL = true;
}
}
if (isNULL == false) {
alert(’请选择删除项!’);
return false;
}
else {
return confirm(’确定要删除信息?’);
}
}
《/script》
dataGridView怎么在所有行标题上添加复选框
将你要显示成checkbox的column type直接改成DataGridViewCheckBoxColumn即可。 也可以在插入新column时可以直接设置。
c#中选中dataGridView的一行或者多行,然后删除数据库对应的数据
string cmdText = "delete from 图书表 where 图书编号=@bookid";
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data source=你的数据库名字.mdb";
OleDbCommand cmd = new OleDbCommand(cmdText, conn);
cmd.Parameters.Add("@bookid", SqlDbType.Char, 15);
conn.Open();
foreach (DataGridViewRow dgvRow in dgvShowData.SelectedRows)
{
cmd.Parameters.Value;
dgvShowData.Rows.Remove(dgvRow);
cmd.ExecuteNonQuery();
}
conn.Close();
//dgvShowData 这个是你的dataGridView控件名称
代码去看看吧!刚好我在做这种的。
这段加在你的删除按钮的Click事件里面
====================================
我写的一个类 从 配置文件读取 连接字符串 来着
用 access 和 上面的一是个道理的
====================================
我改好了 应该OK了吧?
SQL语句你自己看着改吧~

更多文章:
ios开发技术(想问下做ios平台的软件开发,需要那些基础知识(ios软件开发需要学什么))
2025年10月15日 07:30
struts2框架编程(如何学习 struts2 框架对于android编程,有没有什么建议)
2026年6月2日 21:30
cssposition(css的position的属性有哪些)
2025年8月26日 06:45
一对一直播源码开发,即时通讯技术实现有哪几种选择?求QQ 智能 自动聊天 机器人 易语言源码 !最好是能在QQ群里用的 ,能自动
2025年11月30日 18:00
二郎神杨戬动漫电影(电影《新神榜:杨戬》曝先导海报,这部电影讲述的什么故事)
2025年9月2日 08:30
calendarprovider能删除吗(华为手机荣耀7哪些东西可以删除吗)
2026年3月27日 14:45













