diff --git a/src/app/grid-row-pinning/grid-row-pinning.sample.ts b/src/app/grid-row-pinning/grid-row-pinning.sample.ts
index a90fb557f5f..fda771b0795 100644
--- a/src/app/grid-row-pinning/grid-row-pinning.sample.ts
+++ b/src/app/grid-row-pinning/grid-row-pinning.sample.ts
@@ -1,5 +1,14 @@
import { Component, OnInit, ViewChild } from '@angular/core';
-import { IgxGridComponent, ColumnPinningPosition, RowPinningPosition, IgxGridRowComponent, IgxTransactionService, IgxGridTransaction, IgxGridStateDirective } from 'igniteui-angular';
+import {
+ IgxGridComponent,
+ ColumnPinningPosition,
+ RowPinningPosition, IgxGridRowComponent,
+ IgxTransactionService,
+ IgxGridTransaction,
+ IgxGridStateDirective,
+ IgxExcelExporterService,
+ IgxExcelExporterOptions
+} from 'igniteui-angular';
import { IPinningConfig } from 'projects/igniteui-angular/src/lib/grids/common/grid.interface';
@Component({
@@ -23,13 +32,16 @@ export class GridRowPinningSampleComponent implements OnInit {
columns: false,
rowPinning: true,
pinningConfig: true
- };
+ };
@ViewChild('grid1', { static: true })
grid1: IgxGridComponent;
@ViewChild(IgxGridStateDirective, { static: true }) public state: IgxGridStateDirective;
+ constructor(private excelExportService: IgxExcelExporterService) {
+ }
+
onRowChange() {
if (this.pinningConfig.rows === RowPinningPosition.Bottom) {
this.pinningConfig = { columns: this.pinningConfig.columns, rows: RowPinningPosition.Top };
@@ -42,7 +54,7 @@ export class GridRowPinningSampleComponent implements OnInit {
if (this.pinningConfig.columns === ColumnPinningPosition.End) {
this.pinningConfig = { columns: ColumnPinningPosition.Start, rows: this.pinningConfig.rows };
} else {
- this.pinningConfig = { columns: ColumnPinningPosition.End, rows: this.pinningConfig.rows };
+ this.pinningConfig = { columns: ColumnPinningPosition.End, rows: this.pinningConfig.rows };
}
}
@@ -53,7 +65,7 @@ export class GridRowPinningSampleComponent implements OnInit {
this.columns = [
{ field: 'ID', width: '200px', hidden: true },
{ field: 'CompanyName', width: '200px', groupable: true },
- { field: 'ContactName', width: '200px', pinned: false, groupable: true },
+ { field: 'ContactName', width: '200px', pinned: false, groupable: true },
{ field: 'ContactTitle', width: '300px', pinned: false, groupable: true },
{ field: 'Address', width: '250px' },
{ field: 'City', width: '200px' },
@@ -98,28 +110,31 @@ export class GridRowPinningSampleComponent implements OnInit {
togglePinRow(index) {
const rec = this.data[index];
- this.grid1.isRecordPinned(rec)?
- this.grid1.pinRow(this.data[index]) :
- this.grid1.unpinRow(this.data[index])
+ this.grid1.isRecordPinned(rec) ?
+ this.grid1.pinRow(this.data[index]) :
+ this.grid1.unpinRow(this.data[index])
}
togglePining(row: IgxGridRowComponent, event) {
event.preventDefault();
- if(row.pinned) {
+ if (row.pinned) {
row.unpin();
} else {
row.pin();
}
}
+ public exportButtonHandler() {
+ this.excelExportService.export(this.grid1, new IgxExcelExporterOptions("ExportFileFromGrid"));
+ }
+
public saveGridState() {
const state = this.state.getState() as string;
window.localStorage.setItem("grid1-state", state);
}
-
+
public restoreGridState() {
const state = window.localStorage.getItem("grid1-state");
this.state.setState(state);
}
-
}