设置GridView单选

/// <summary>

/// 设置GridView单选

/// </summary>

/// <param name="view"></param>

/// <param name="selectCaption"></param>

public static void SetGridViewSingleSelect(DevExpress.XtraGrid.Views.Grid.GridView view,string selectCaption="选择")

{

if (view == null) return;

//设置显示复选框列

view.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect;

view.OptionsSelection.MultiSelect = true;

view.OptionsSelection.CheckBoxSelectorColumnWidth = 45;

view.OptionsSelection.ShowCheckBoxSelectorInColumnHeader = DevExpress.Utils.DefaultBoolean.False;//列标题不显示CheckBox,控制不能全选

//

var selectCol=view.VisibleColumns[0];

if(selectCol.FieldName== "DX$CheckboxSelectorColumn")

{

selectCol.Caption = selectCaption;

}

view.SelectionChanged += onSelectChanged;

void onSelectChanged(object sender , DevExpress.Data.SelectionChangedEventArgs e)

{

//注销事件,防止以下操作反复触发该事件

view.SelectionChanged -= onSelectChanged;

//清除所有选择

view.ClearSelection();

if (e.Action == CollectionChangeAction.Add)//选中

{

view.SelectRow(e.ControllerRow);

}

else if (e.Action == CollectionChangeAction.Remove)//取消选中

{

view.UnselectRow(e.ControllerRow);

}

view.SelectionChanged += onSelectChanged;

}

}

相关推荐
程序猿_极客8 分钟前
【2025 最新】 MySQL 数据库安装教程(超详细图文版):从下载到配置一步到位
开发语言·数据库·mysql·mysql数据库安装
2501_9454251514 分钟前
C++编译期字符串处理
开发语言·c++·算法
我命由我1234514 分钟前
JS 开发问题:url.includes is not a function
开发语言·前端·javascript·html·ecmascript·html5·js
m0_7336122115 分钟前
模板编译期哈希计算
开发语言·c++·算法
阿蒙Amon22 分钟前
C#常用类库-详解SqlSugar
开发语言·数据库·c#
似水明俊德25 分钟前
06-C#
开发语言·c++·算法·c#
云栖梦泽27 分钟前
易语言开发从入门到精通:进阶篇·图形图像高级实战
开发语言
程序员小李白27 分钟前
vue2基本语法详细解析(2.7条件渲染)
开发语言·前端·javascript
xyq202430 分钟前
Chart.js 安装指南
开发语言
Predestination王瀞潞33 分钟前
1. Java SE到底是什么:不仅仅是面向对象
java·开发语言