是否有可能有一个网格,其中列的宽度不是基于像素的?当与sizeColumnsToFit()
一起使用时,这将特别有用。
例如,在下表中,可视化设计可能要求ID和Name字段仅适合内容,但是然后让Description填充包含元素的其余宽度。
| ID | Name | Description |
|----|-------|----------------|
| 1 | Foo | Something foo |
| 2 | Bar | Something bar |
目前,使用sizeColumnsToFit()
会使它们具有相同的宽度(因此tableWidth / 3
类似。)
答案 0 :(得分:1)
虽然您仍然需要在我的建议中提供宽度,但它确实允许更多"动态"适应。
首先,为要更小/固定的列设置宽度:
var columnDefs = [
{
headerName: "Column 1",
field: "col1",
width:20
},
挂入gridReady事件以调整其余列的大小(不会设置宽度):
$scope.gridOptions = {
columnDefs: columnDefs,
rowData: rowData,
onGridReady: () => {
$scope.gridOptions.api.sizeColumnsToFit();
}
...other properties
答案 1 :(得分:0)
您可以在列定义中使用网格的width属性,并将其绑定到可以百分比返回宽度的函数。
width: this.columnWidth(windowWidth, 10)
private columnWidth(windowWidth:number, columnSize:number) {
return Math.floor((windowWidth * columnSize) / 100);
}