现在DataGridView上面有很几条数据,我想将这几条数据的某一列,比如说是“状态”这个字段 全部设置成“同意”,如何实现,意思就是将所有的数据都选中,然后单击一下按钮 就设置成功,不要单条单条的设置

解决方案 »

  1.   

    设置一个右键菜单。弹出菜单后。再foreach 循环设置cell的值.如果有ds直接update ds再重新绑定。
      

  2.   


    foreach (DataGridViewRow dr in DataGridView.Rows)
    {
         dr.Cells["字段名"].Value = "同意";
    }应该是这样吧
      

  3.   

    在DataGridView里面弄个checkbox
    在代码里面写
      for (int i = 0; i < GridViewInfo.Rows.Count; i++)
            {
                CheckBox cb = (CheckBox)GridViewInfo.Rows[i].FindControl("CheckBox1");
                if (checkAll.Checked)
                {
                    cb.Checked = true;
                }
                else
                {
                    cb.Checked = false;
                }
            }
    找到控件ID 然后选择
      

  4.   

    楼主说的是:1点击一下全部设置成一个值 2 还是点击一下同时设置其中的几条为同一个值呢?如果是前者:直接 按钮单击事件中 cmd=“update 表 set state=‘同意'" 不就行了!(针对你gridview中绑定的数据是查询表中的全部数据)
      

  5.   

    http://blog.csdn.net/xianfajushi/article/details/7591330
      

  6.   

    在GridView数据源的DataTable里加一个Boolean虚拟列
    Column c=new Column(typeof(bool));
    datatable.Add(c);
    datagridview.DataSource=datatable;
      

  7.   

    在DataGridView里添加一列checkbox,想改几条数据就选中几条,然后点击按钮,修改数据        private void button_Click(object sender, EventArgs e)
            {
                foreach (DataGridViewRow row in this.dataGridView1.Rows)
                {
                    if (GetBooleanValue(row.Cells[checkbox].Value))
                    {
                        row.Cells[状态].Value = "同意";
                    }
                }
            }        public static bool GetBooleanValue(Object obj)
            {
                if (obj != null)
                {
                    bool b = false;
                    if (bool.TryParse(obj.ToString(), out b))
                        return b;
                }
                return false;
            }
      

  8.   

    11楼正解,每一行前面都有一个CHECKBOX,然后还有一个CEHCKBOXALL,如果单选就单击行前的CHECKBOX,点击更新,将状态UPDATE到数据库,然后重新绑定,或者点击CHECKBOXALL,选中所有,更新后绑定
      

  9.   

    如果要将全部数据都改变的话直接这样就可以了
    for(int i=0;i<DataGridView.Rows.Count;i++)
    {
         DataGridView.Rows[i][状态状态这一列的索引]=“同意";}