winform 关于DataGridView复选框的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform 关于DataGridView复选框的问题相关的知识,希望对你有一定的参考价值。
跟据combox的选择 下面DataGridView加载相应的数据 但是复选框在开始时会根据数据库里的一个值默认是选中还是不选中 第一个图是开始加载时的情况 他不会有默认 但是combox的选择改变的话会有 怎么解决才能让他
有默认选中的
不行 啊
追答你写代码的事件是,selectedIndexChanged事件么?如果不是,就换成这个事件,把代码移到这个事件里面。
追问加个QQ详谈 601738181
追答额,好吧
参考技术A 循环判断赋值。 参考技术B 在onload的过程中,进行初始化WinForm DataGridView根据选中的复选框删除
注意:在DataGridView添加一列(name:delete),ColumnType属性为:DataGridViewCheckBoxColumn,FlaseValue属性为:Flase,TureValue属性为Ture,并设置DataGridView的ReadOnly属性为Flase。
- //删除
- private void del_button_Click(object sender, EventArgs e)
- {
- try
- {
- int count = 0;
- for (int i = 0; i < form_dataGridView.RowCount; i++)
- {
- if (form_dataGridView.Rows[i].Cells[8].EditedFormattedValue.ToString() == "True")
- {
- count++;
- }
- }
- if (count == 0)
- {
- MessageBox.Show("请至少选择一条数据!", "提示");
- return;
- }
- else
- {
- if (MessageBox.Show(this, "共选择" + count + "条,你要删除这些数据吗?", "提 示", MessageBoxButtons.YesNo, MessageBoxIcon.Information).ToString() == "Yes")
- {
- string connStr = ConfigurationManager.ConnectionStrings["connStr"].ToString();
- OleDbConnection conn = new OleDbConnection(connStr);
- conn.Open();
- string str = "(";
- for (int i = 0; i < form_dataGridView.RowCount; i++)
- {
- if (form_dataGridView.Rows[i].Cells[8].EditedFormattedValue.ToString() == "True")
- {
- str += form_dataGridView.Rows[i].Cells[0].Value.ToString() + ",";
- }
- }
- if (str.Length > 0)
- {
- str = str.Substring(0, str.Length - 1);
- str += ")";
- MessageBox.Show(str);
- }
- string sql = "delete from form where id in " + str;
- OleDbCommand cmd = new OleDbCommand(sql, conn);
- cmd.ExecuteNonQuery();
- conn.Close();
- MessageBox.Show("删除成功");
- GetData();//引用事件,刷新数据
- }
- else
- {
- return;
- }
- }
- }
- catch
- {
- }
- }
以上是关于winform 关于DataGridView复选框的问题的主要内容,如果未能解决你的问题,请参考以下文章
winform中datagridview 中的复选框 默认不选中的问题
Winform中DataGridView如何获得单元格中复选框,以及代码设置单元格内容。