在我的情况下,如果一个列被移动或固定,同样的更改也应该反映在子网格中。我已经为此编写了一个函数,它根据父级更改了子网格中的属性,但是无法找到在固定时发生的任何事件。父网格上的列,以便我可以调用我的函数。当前我正在使用此事件
$ scope.gridApi.core.on.rowsRendered($范围,$ scope.pinSubGridColumns)
但是它被触发了太多次并且视图变得扭曲。如果我在父网格中固定列,那么子网格列在这些列之后开始,但我希望子网格列按父对齐,所以如果我在父网格中有id列然后subgrid id列应该在它下面,即使它是固定的。我可以实现这个吗?
这是关于plunker的演示:http://plnkr.co/edit/AKUFxTaJ2c3fLvl7AZin?p=preview
功能:
$scope.pinSubGridColumns=function()
{
for(i=0;i<$scope.gridApi.grid.columns.length;i++)
{
for(j=0;j<$scope.subGridColumnDefs.length;j++)
{
if($scope.gridApi.grid.columns[i].name===$scope.subGridColumnDefs[j].name)
{
if($scope.gridApi.grid.columns[i].renderContainer==="left")
{
$scope.subGridColumnDefs[j].pinnedLeft=true;
$scope.subGridColumnDefs[j].pinnedRight=false;
}
else if($scope.gridApi.grid.columns[i].renderContainer==="right")
{
$scope.subGridColumnDefs[j].pinnedLeft=false;
$scope.subGridColumnDefs[j].pinnedRight=true;
}
else
{
$scope.subGridColumnDefs[j].pinnedLeft=false;
$scope.subGridColumnDefs[j].pinnedRight=false;
}
}
}
}
if( $scope.subGridApi!==undefined)
{
$scope.subGridApi.core.notifyDataChange(uiGridConstants.dataChange.COLUMN);
}
}