mfeilgm 发表于 2015-10-22 14:03:18

gridcontrol多选问题

在gridcontrol中,我启用了多选复选(设置了MultiSelect=true;MultiSelectMode=CheckBoxRowSelect),现在我有一个需求,在全选操作时,我希望不满足要求的行,禁止被选中。请问一下要如何写这个代码?
我在SelectionChanged事件中,编写了如下代码。但在执行时遇到了问题。如果我单击了其中任何一个单元格后执行全选,则改变的是全选之前单击的单元格的值,而非选中该行。请老师指导,谢谢!
if (e.ControllerRow > rowCount - 1 || e.ControllerRow < 0)
                {
                  //全选                  
                  if ((bool)this.OrderGridView.FocusedValue)
                  {                        
                        for (int i = 0; i < this.GridView.RowCount; i++)
                        {
                            DataRowView dr = (DataRowView)this.OrderGridView.GetRow(i);
                            if (dr["Satus"].ToString().Trim() == "1")
                            {
                              this.OrderGridView.FocusedRowHandle = i;
                              this.OrderGridView.SetFocusedValue(false);                              
                            }
                        }
                        this.OrderGridView.FocusedRowHandle = 0;
                  }
                }

页: [1]
查看完整版本: gridcontrol多选问题