关于C# DataGridView 全选与取消的小问题

小弟我前面是做游戏的用的是c++  现今用c#来做  有些不熟悉可能理解上有误  欢迎大家纸张

private void btnSelectOrCancel_Click(object sender, EventArgs e)
        {
            bool isChecked = false;
            foreach (DataGridViewRow gvRow in dgvData.Rows)
            {
                string strState = gvRow.Cells[dgvData.ColumnCount - 1].Value.ToString();
                if (!(strState.CompareTo("True") == 0 || strState.CompareTo("true") == 0))
                {
                    isChecked = true;
                    break;
                }
            }
            for(int i = 0;i < dgvData.RowCount;++i)
            {
                dgvData.Rows[i].Cells[dgvData.ColumnCount - 1].Value = isChecked;
            }
        }

这段代码有问题  当我的一个单元格被点击再点全选,该单元格的视图没有发生变化。我打日志不断调试 发现数据是对的  猜测是视图没更新或者数据缓存的问题。

于是我就查看关于DataGridView的相关属性,其中有一个属性CurrentCell。当点击某个cell时  那这个属性将会变为这个cell。此时我们只需要在全选按钮点击事件最开始将我们的DataGridView的CurrentCell的值置为null。这个问题就解决了。其实还有另一个方法 就是数据源进行操作。这种方法大家应该都了解这里就不做解释。

时间: 2024-11-06 05:44:59

关于C# DataGridView 全选与取消的小问题的相关文章

datagridview里面的checkbox全选和取消全选

全选 设置全选button,选中所有的checkbox private void selectAll_Click(object sender, EventArgs e) { //遍历datagridview中的每一行,判断是否选中,若为选中,则选中 for (int i = 0; i < dataGridView1.Rows.Count; i++) { if ((Convert.ToBoolean(dataGridView1.Rows[i].Cells[0].Value) == false))

JavaScript全选和取消全选

<html> <head> <title>全选和取消全选</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script language="javascript"> function checkAllorcancelAll(){ //思路:1.获取checkbox的选中状

实现全选和取消全选

点击“全选老大”实现全选,再次点击取消全选,以此类推. html代码是不变的: <div id="mycheckbox"> <input type="checkbox" id="selectAll"><br> <input type="checkbox"><br> <input type="checkbox"><br> &l

如何实现复选框的全选和取消全选效果

如何实现复选框的全选和取消全选效果:在很多网站都有这样的功能,当点击一个全选按钮之后,所有的复选框都会被选中,再点击之后会取消全选,功能非常的人性化,可以省却很多人力,下面就简单介绍一下JS如何实现此功能,代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://ww

全选反选取消-js代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

全选、取消、2级 checkbox的选中切换

需求:点击父级checkbox的时候,子级出现全选或全取消:点击子级时,如:子级都是在未选中时,点击某一个子级,则父级选中:如:子级中只有一个选中状态(其他子级都是未选中),点击该子级,则父级也改为未选中状态: HTML代码: <dl class="set-list"> <dt> <input type="checkbox" name="plateName" value="18" checked&

javascript实现复选框全选和取消代码分析

javascript实现复选框全选和取消代码分析:复选框是常用的元素之一,而点击实现全选和取消全选又是最为常用的功能,特别是在批量操作管理中,非常的方便,下面就通过代码实例介绍一下如何实现此效果,代码实例如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.soft

jquery 全选 反选 取消 批量删除

首选引入jquery 全选 //全选 function myall(){ $("input[name='d[]']").each(function(index,e){ $(this).prop('checked',true); }); } 取消 //当true改为false时为取消 // function no(){ // $("input[name='d[]']").each(function(index,e){ // $(this).prop('checked'

Axure 7.0实现复选框全选和取消全选

使用Axure原型工具对产品进行设计,使用复选框来实现全选中和全取消效果,也可以利用按钮或文字做为开关来控制效果,下面主要介绍使用复选框来实现全选中和全取消效果. 1/1 首先输入复选框效果的文字,并为每个复选框建立名称,方便后期对其辨认,例如:选择你最喜欢居住的城市,建立一个全选的复选框进行全选or取消全选效果 1/2 设置全选中 1/2/1 选择全选复选框,双击(选中状态改变时),打开新增用例对话框 1/2/2  设置用例名称,设置条件判断为真 1/2/3 选择(选中),勾选需要被选中的复选