2016-03-22 2 views
0

Est-ce que Wijmo a la fonctionnalité d'ajouter des niveaux de tri supplémentaires dans les cas où le premier critère de recherche est une correspondance? Cette recherche secondaire ne serait utilisée que dans les cas où les critères primaires sont une correspondance. Par exemple, si mes deux colonnes étaient État et Ville, et que je voulais trier les états par ordre croissant, mais les villes dans ces états par ordre décroissant. Donc, ma liste pourrait lire quelque chose commeTri multiple de critères/niveaux avec wijmo ICollectionView

NV | Las Vegas

NV | Ely

NY | Saratoga

NY | New York City

NY | Albany

Répondre

1

Le tri est effectué au niveau de la source de données, par la classe CollectionView. Le CollectionView a une propriété "sortDescriptors" qui est un tableau. Vous pouvez ajouter autant de niveaux de tri que vous le souhaitez. Par exemple:

// raw data 
var data = [ 
    { state: 'NV', town: 'Las Vegas' }, 
    { state: 'NY', town: 'Saratoga' }, 
    // ... more data ... 
]; 

// CollectionView 
var view = new wijmo.collections.CollectionView(data); 

// sort by state, then by town 
var sd = view.sortDescriptions; 
sd.push(new wijmo.collections.SortDescription('state', true)); 
sd.push(new wijmo.collections.SortDescription('town', true)); 

Vous pouvez maintenant utiliser l'objet "view" comme source de données de la grille.

Notez que si vous n'utilisez pas CollectionView, le FlexGrid en créera un automatiquement pour un usage interne (afin qu'il puisse trier les données, etc.). Cette CollectionView interne est exposée via la propriété "collectionView" de la grille. Donc, vous pouvez également faire ceci:

// bind grid to raw data (creates internal CollectionView automatically) 
grid.itemsSource = data; 

// sort the grid's CollectionView 
var sd = grid.collectionView.sortDescriptions; 
sd.push(new wijmo.collections.SortDescriptor('state', true)); 
sd.push(new wijmo.collections.SortDescriptor('town', true)); 

J'espère que cela aide. Pour plus d'informations sur la classe CollectionView, s'il vous plaît consulter ce lien:

https://wijmo.com/5/docs/topic/wijmo.collections.CollectionView.Class.html

J'espère que cela aide.