C# Dev解决gridview1_SelectionChanged和gridview1_RowCellClick事件触发两次等问题

先看图吧: C# Dev解决gridview1_SelectionChanged和gridview1_RowCellClick事件触发两次等问题_第1张图片
如图:图中复选框是通过属性设置出来的:
 gvZC.OptionsSelection.MultiSelect = true;
 gvZC.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect;
 gvZC.OptionsSelection.ShowCheckBoxSelectorInColumnHeader = DevExpress.Utils.DefaultBoolean.False;   //是否启用全选功能 true为启用,false不启用。
我的需求是点击复选框可以选中行,点击行也能选中行。在gvZC_RowCellClick事件里写   gvZC.SelectRow(e.RowHandle);确实能达到点击行选中行的效果,但是这么写后,复选框点击失去效果了,其实是触发了两次效果,一次选中,一次不选中,所以会出现看不到效果。
解决办法 :gvZC_RowCellClick事件里写 
           if (!e.CellValue.Equals(false))
            {
                gvZC.SelectRow(e.RowHandle);
            }
这样就可以达到值触发一次效果。因为复选框那一列是没有值的。e.CellValue只能是true或者false。

你可能感兴趣的:(Form,c#,Dev,gridview)