()  => {
     this.progressDialog.close();
     this.printer.print({
         template: this.printTemplate,
         contextData: textItems,
         printContext: 'default'
     });
 }
    printGrid() {
        this.progressDialog.open();
        const columns = this.gridContext.columnSet.displayColumns();
        const textItems = {columns: columns, rows: []};

        this.gridContext.getAllRowsAsText().subscribe(
            row => {
              this.progressDialog.increment();
              textItems.rows.push(row);
            },
            err => this.progressDialog.close(),
            ()  => {
                this.progressDialog.close();
                this.printer.print({
                    template: this.printTemplate,
                    contextData: textItems,
                    printContext: 'default'
                });
            }
        );
    }
 err => this.progressDialog.close(),
 row => {
   this.progressDialog.increment();
   textItems.rows.push(row);
 },