2017-09-22 2 views
1

J'ai une barre de panneau avec une liste de panneaux qui montrent correctement. Le problème est que je dois montrer une grille totalement différente pour chaque panneau. Comment puis je faire ça?Kendoui Comment ajouter dynamiquement des grilles Kendo Angular 2 à une barre de panneau?

Ma structure de données se présente comme suit

let gridData: any[] = []; 

           var objectForGrid1 = { 

           C1: "123456", 

           C2: "1234", 

           C4: "4567" 

           } 

var objectForGrid2 = { 

          C1: "Product", 

          C2: "Product Description", 

          C3: "Date", 

          C4: "Date" 

          } 

         gridData.push(objectForGrid1); 

         gridData.push(objectForGrid2); 

Répondre

1

Vous pouvez utiliser templates pour fournir différents Grids avec leurs paramètres respectifs en tant que contenu pour les différents éléments de PanelBar, par exemple:

<kendo-panelbar> 
     <kendo-panelbar-item [title]="'Grid 1'" [expanded]="true"> 
      <ng-template kendoPanelBarContent> 
       <kendo-grid [data]="grid1Data"></kendo-grid> 
      </ng-template> 
     </kendo-panelbar-item> 
     <kendo-panelbar-item [title]="'Grid 2'" [expanded]="true"> 
      <ng-template kendoPanelBarContent> 
       <kendo-grid [data]="grid2Data"></kendo-grid> 
      </ng-template> 
     </kendo-panelbar-item> 
    </kendo-panelbar> 

EXAMPLE

+0

Alors, que si je dynamiquement besoin de grilles? Je ne saurai pas combien de grilles seront nécessaires avant qu'une procédure stockée ne soit renvoyée depuis une base de données. Ça pourrait être 2 grilles, ça pourrait être 10 grilles pour aller dans le panneau. Je ne saurais pas avant l'exécution donc j'ai besoin d'un moyen de les ajouter dynamiquement comme peut-être un ngFor ou quelque chose –

+0

Boucle à travers une collection avec les propriétés pour les différentes grilles via * ngFor et créer un élément PanelBar pour chacun, par exemple: http: //plnkr.co/edit/zHU1s8cDTovr3go3mVGi?p=preview – topalkata

+0

Vous êtes un sauveteur –