设置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;

}

}

相关推荐
阿贵---7 分钟前
C++中的RAII技术深入
开发语言·c++·算法
Traced back13 分钟前
怎么用 Modbus 让两个设备互相通信**,包含硬件接线、协议原理、读写步骤,以及 C# 实操示例。
开发语言·c#
一个帅气昵称啊1 小时前
基于.NET AgentFramework开发OpenClaw智能体框架
人工智能·自然语言处理·c#·.net·openclaw
娇娇yyyyyy2 小时前
QT编程(17): Qt 实现自定义列表模型
开发语言·qt
唐青枫2 小时前
C#.NET SpinLock 深入解析:自旋锁原理、使用边界与性能取舍
c#·.net
ms_27_data_develop2 小时前
Java枚举类、异常、常用类
java·开发语言
add45a2 小时前
C++编译期数据结构
开发语言·c++·算法
岁岁种桃花儿3 小时前
AI超级智能开发系列从入门到上天第四篇:AI应用方案设计
java·服务器·开发语言
Amnesia0_03 小时前
C++中的IO流
开发语言·c++