-
Notifications
You must be signed in to change notification settings - Fork 22
Expand file tree
/
Copy pathtree-grid-both-sides-pinning.component.ts
More file actions
60 lines (53 loc) · 2.12 KB
/
tree-grid-both-sides-pinning.component.ts
File metadata and controls
60 lines (53 loc) · 2.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import { Component, OnInit, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';
import { ColumnPinningPosition } from 'igniteui-angular/core';
import { IPinningConfig, IgxColumnComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent } from 'igniteui-angular/grids/core';
import { IgxTreeGridComponent } from 'igniteui-angular/grids/tree-grid';
import { IgxButtonDirective } from 'igniteui-angular/directives';
import { generateEmployeeDetailedFlatData } from '../data/employees-flat-detailed';
@Component({
encapsulation: ViewEncapsulation.None,
providers: [],
selector: 'app-tree-grid-sample',
styleUrls: ['tree-grid-both-sides-pinning.component.scss'],
templateUrl: 'tree-grid-both-sides-pinning.component.html',
imports: [
IgxTreeGridComponent,
IgxGridToolbarComponent,
IgxGridToolbarActionsComponent,
IgxColumnComponent,
IgxButtonDirective
]
})
export class TreeGridBothSidesPinningSampleComponent implements OnInit {
@ViewChild('grid1', { static: true })
public grid1: IgxTreeGridComponent;
@ViewChild('pinTemplate', { read: TemplateRef, static: true })
public pinTemplate: TemplateRef<any>;
public data: any[];
public columns: any[];
public pinningConfig: IPinningConfig = { columns: ColumnPinningPosition.End };
public start = ColumnPinningPosition.Start;
public end = ColumnPinningPosition.End;
public ngOnInit(): void {
this.data = generateEmployeeDetailedFlatData();
}
public pinLeft() {
this.grid1.selectedColumns().forEach((col: IgxColumnComponent) => {
col.pinned = false;
col.pinningPosition = ColumnPinningPosition.Start;
col.pinned = true;
});
}
public pinRight() {
this.grid1.selectedColumns().forEach((col: IgxColumnComponent) => {
col.pinned = false;
col.pinningPosition = ColumnPinningPosition.End;
col.pinned = true;
});
}
public unpinColumn() {
this.grid1.selectedColumns().forEach((col: IgxColumnComponent) => {
col.pinned = false;
});
}
}