2016-12-28 128 views
2

外部ボタンクリック時にグリッドの先頭に新しい空の行を追加しようとしています。グリッドは完全にうまく表示されます。 collectionViewを使用してwijmoグリッドの最初に新しい空行を追加します。angular2

<wj-flex-grid #flex 
    [itemsSource]="data" 
    [isReadOnly]="true" 
    [headersVisibility]="'Column'" 
    [selectionMode]="'ListBox'" 
    (selectionChanged)="gridSelectionChange($event, flex)" 
    (loadedRows)="onGridLoaded($event)"> 
</wj-flex-grid> 

とデータ:

[allowAddNew] = 'true'を使用して
this.data = new wjcCore.CollectionView(records); 

、それはデフォルトで一番下に新しい行を追加します。 しかし、私はボタンクリックで最初に追加したいと思います。

更新日:addNewRowは細かい作業が、に追加

addNewRow(ctl) { 
    this.data.addNew(); 
} 

<a (click)="addNewRow(flex)">add new</a> 

を、私はこれを達成することができますどのように助けてください。グリッドプロパティnewRowAtTopを提供wijmo

おかげ

答えて

0

は、一番上に新しい行を設定します。

以下のようにコードを変更します。

<wj-flex-grid #flex 
    [newRowAtTop] = "true" 
    [itemsSource]="data" 
    [isReadOnly]="true" 
    [headersVisibility]="'Column'" 
    [selectionMode]="'ListBox'" 
    (selectionChanged)="gridSelectionChange($event, flex)" 
    (loadedRows)="onGridLoaded($event)"> 
</wj-flex-grid> 

は、上記のコードで[newRowAtTop] = "true"部分に注意してください。 newRowAtTopの説明に続いて

thisリンクからコピーされる:

は、新しい行テンプレート はグリッドの最上部にまたは下部に配置されるべきかどうかを示す値を取得または設定します。

newRowAtTopプロパティをtrueに設定し、新しい行 テンプレートを常に表示したままにする場合は、frozenRowsプロパティ を1に設定します。これにより、上部の新しい行テンプレートがフリーズされ、 がビューをスクロールしなくなります。

allowAddNewプロパティーがtrueに設定されている場合、およびitemsSourceオブジェクトが 新しいアイテムの追加をサポートする場合にのみ、新しい行テンプレートが表示されます。

関連する問題