You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TcxGrid中Web风格行选择复选框无触发事件,如何实现选中计数显示?

解决DevExpress QuantumGrid复选框选中/取消时更新选中计数的问题

环境:Delphi 10.3 Rio、DevExpress QuantumGrid 19.1.2

你已经配置了网格的复选框选择功能,但找不到合适的事件触发选中计数更新——直接用DataController的OnSelectionChanged事件就能完美解决,不管是单个行勾选、表头全选/取消,还是组行勾选同步子行,只要选择状态变化,这个事件就会触发。

实现步骤:

  1. 给目标GridView的DataController绑定OnSelectionChanged事件(可以在设计时通过属性面板设置,也能代码动态绑定)
  2. 在事件处理函数里执行你的计数更新逻辑

代码示例:

动态绑定事件的代码:

AView.DataController.OnSelectionChanged := cxGridSelectionChanged;

事件处理过程实现:

procedure TYourForm.cxGridSelectionChanged(Sender: TObject);
var
  SelectedCount, TotalCount: Integer;
  AController: TcxDataController;
begin
  AController := TcxDataController(Sender);
  SelectedCount := AController.GetSelectedCount;
  TotalCount := AController.RecordCount;
  Label1.Caption := Format('selected = %d of %d', [SelectedCount, TotalCount]);
end;

补充说明:

  • 这个事件覆盖所有选择变更场景:鼠标点击复选框、键盘操作切换选中状态、代码修改选中集合,全部能触发
  • 你配置的dcoMultiSelectionSyncGroupWithChildren选项生效时,组行勾选同步子行的操作也会触发该事件,计数会自动包含所有同步选中的子行,不需要额外处理

内容的提问来源于stack exchange,提问作者Yako

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 07:05:13