Demo - Arrays and CollectionViews
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdn.grapecity.com/wijmo/5.latest/styles/wijmo.min.css">
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.min.js"></script>
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.grid.min.js"></script>
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.input.min.js"></script>
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.grid.filter.min.js"></script>
<div class="container">
<div style="height:300px;">
<wj-collection-view-pager [cv]="cvData"></wj-collection-view-pager>
<wj-flex-grid #Grid
[itemsSource]="cvData"
[allowAddNew]="false"
[isReadOnly]="true">
<wj-flex-grid-column [header]="'Country'"
[binding]="'country'"
[width]="'1.3*'">
<ng-template wjFlexGridCellTemplate
[cellType]="'Cell'"
let-cell="cell">
<a href="javascript:void(0)"
(click)="inputChanged(cell.item.country)">{{cell.item.country}}</a>
</ng-template>
</wj-flex-grid-column>
<wj-flex-grid-column [header]="'Sales'"
[binding]="'sales'"
[format]="'n2'"
[width]="'1*'">
</wj-flex-grid-column>
<wj-flex-grid-column [header]="'Expenses'"
[binding]="'expenses'"
[format]="'n2'"
[width]="'1*'">
</wj-flex-grid-column>
</wj-flex-grid>
</div>
</div>
TypeScript
onload = function() {
// create some random data
@ViewChild('Grid') _grid: WjFlexGrid;
var countries = 'US,Germany,UK,Japan,Italy,Greece'.split(',');
var data = [];
for (var i = 0; i < 1000; i++) {
data.push({
id: i,
country: countries[i % countries.length],
sales: Math.random() * 10000,
expenses: Math.random() * 5000
});
}
this.cvData = new wjcCore.CollectionView(data);
cvData.pageSize = 10;
var filter = new wjcGridFilter.FlexGridFilter(this._grid); //Referred in ViewChild
filter.getColumnFilter('country').valueFilter.maxValues = 2;
/*var cvData=new wijmo.collections.CollectionView(data,{
pageSize:10
})
// bind a grid to the raw data
var theGrid = new wijmo.grid.FlexGrid('#theGrid', {
allowSorting: false,
showSort: false,
autoGenerateColumns: false,
columns: [
{binding:'id'},
{ binding: 'country', header: 'Country', width: '2*'},
{ binding: 'sales', header: 'Sales', width: '*', format: 'n2'},
{ binding: 'expenses', header: 'Expenses', width: '*', format: 'n2'}
],
itemsSource: cvData
});
var filter=new wijmo.grid.filter.FlexGridFilter(theGrid);
filter.getColumnFilter("id").valueFilter.maxValues=1000;*/
}