AG-GRID-ANGULAR - 如果单元格渲染器中的所有复选框都是 checked/unchecked,如何在 header 组件中 check/uncheck 复选框?

AG-GRID-ANGULAR - How to check/uncheck checkbox in header component if all checkboxes in the cell renderers are checked/unchecked?

我正在使用 ag-grid。我在 header 中有一个复选框,使用 headerComponentFramework 作为列(此处为 isBooked),在同一列的相应单元格中使用 cellRendererFramework.

的复选框

我的要求是 check/uncheck 当所有单元格复选框都是 checked/unchecked 时 header 复选框。而且,所有这些 activity 都会更新与网格关联的数据状态。

这是网格的样子 - https://angular-fcgbt9.stackblitz.io/

这种情况在 stackblitz link 处重现。

https://stackblitz.com/edit/angular-fcgbt9?embed=1&file=src/app/grid-header-checkbox/grid-header-checkbox.component.ts

我试过的方法是-

  1. 使用 Subject 发出值变化。但是,看起来 Subject 没有在 header 组件内的 agInit 挂钩中被订阅。
  2. 使用gridApi.refreshHeader()。 Angular 版本的 header 组件界面 (IHeaderAngularComp) 似乎没有刷新挂钩。

我无法更新 header 复选框的值,当我 运行 用于检查所有单元格复选框是否为 checked/unchecked 的逻辑并尝试更新 checked/unchecked 的值时header 组件内的复选框。

您可以将 headerCheckboxSelection 事件与 onRowSelected 事件一起使用(这将更新您的数据)。

这是一个有效的 code