|
[app.component.html]
<ejs-tab id="tab_default" heightAdjustMode='Auto'>
<e-tabitems>
<e-tabitem [header]='headerText[0]'>
<ng-template #content>
<ejs-grid #grid id="Grid" (rowSelected)='rowSelected($event)' [dataSource]="data" (toolbarClick)='clickHandler($event)'
[allowFiltering]="true" [filterSettings]='filterSettings'
allowSorting='true' showColumnMenu='true' [allowExcelExport]='true' [allowPdfExport]='true' [editSettings]='editSettings' [toolbar]='toolbar'
[allowPaging]="true" [pageSettings]='pageOption'>
<e-columns>
. . . . . .
</ejs-grid>
</ng-template>
</e-tabitem>
</e-tabitems>
</ejs-tab>
[app.component.ts]
import { Component, OnInit, ViewChild } from '@angular/core';
import { orderData } from './data';
import { AggregateService, GridComponent, DialogEditEventArgs,ToolbarService, ExcelExportService, PdfExportService,
} from '@syncfusion/ej2-angular-grids';
import { EditSettingsModel, ToolbarItems, SaveEventArgs } from '@syncfusion/ej2-angular-grids';
. . . . . .
export class AppComponent {
. . . . .
@ViewChild('grid', {static:false})
public grid: GridComponent;
. . . .
public ngOnInit(): void {
this.filterSettings = { type: 'Menu' };
this.data = orderData;
this.editSettings = { allowEditing: true, allowAdding: true, allowDeleting: true, mode: 'Normal' };
this.toolbar = ['ExcelExport', 'PdfExport', 'CsvExport'];
}
rowSelected (args: any) : void {
console.log(this.grid.getSelectedRecords());
}
clickHandler(args: any): void {
switch (args.item.text) {
case 'PDF Export':
this.grid.pdfExport();
break;
case 'Excel Export':
this.grid.excelExport();
break;
case 'CSV Export':
this.grid.csvExport();
break;
}
}
} |