首页 > 解决方案 > 如何在 ag-grid 中选择列数据

问题描述

我必须启用列选择并在选定的特定列上执行诸如导出 Excel/复制到剪贴板之类的操作。要求是当我单击列标题时,它应该选择整个列。如何做到这一点?

标签: ag-gridag-grid-react

解决方案


有几种方法可以做到这一点。

一种是在列菜单中添加一个新的“选择列”条目,然后在操作中创建一个新的单元格区域。这样的事情应该可以解决问题:

var gridOptions = {
 ....
  getMainMenuItems: getMainMenuItems,
 ....
}

function getMainMenuItems(params) {
 var menuItems = params.defaultItems.slice(0);
 menuItems.push({
   name: 'Select Column',
   action: function () {
     gridOptions.api!.clearRangeSelection();
     const cellRangeParams: CellRangeParams = {
       rowStartIndex: 0,
       rowEndIndex: gridOptions.api!.getDisplayedRowCount(),
       columnStart: params.column.getId(),
       columnEnd: params.column.getId(),
   };
   gridOptions.api!.addCellRange(cellRangeParams);
  },
 });
 return menuItems;
}

推荐阅读