Esiste un'implementazione di PagedCollectionView in WPF? Esiste in Silverlight ma non è in WPF.Visualizzazione raccolta impaginata in WPF
Se non c'è, quale sarebbe il modo più semplice per implementarlo?
Esiste un'implementazione di PagedCollectionView in WPF? Esiste in Silverlight ma non è in WPF.Visualizzazione raccolta impaginata in WPF
Se non c'è, quale sarebbe il modo più semplice per implementarlo?
È sufficiente prendere il codice dallo Silverlight one e utilizzarlo nel progetto WPF.
Scusa, so che questo è davvero vecchio ma sento che mi manca qualcosa qui, sembra esserci un intero un mucchio di dipendenze che avrebbero anche bisogno porting? –
È passato molto tempo. Credo che ci siano alcune dipendenze, ma sono tutte molto localizzate e facili da copiare. –
Grazie Kent, ho trovato questo collegamento che conteneva tutto il necessario: https://silverlight.svn.codeplex.com/svn/Release/Silverlight4/Source/System.Windows.Data/PagedCollectionView/ per chiunque altro trovando questo. –
Oppure utilizzare solo la classe CollectionView e "doppio filtro" la vostra collezione
soluzione trovata qui: Own CollectionView for paging, sorting and filtering
Ho incollato il pezzo di codice presentato qui per la vostra comodità:
// obtenir la CollectionView
ICollectionView cvCollectionView = CollectionViewSource.GetDefaultView(this.Suivis);
if (cvCollectionView == null)
return;
// filtrer ... exemple pour tests DI-2015-05105-0
cvCollectionView.Filter = p_oObject => { return true; /* use your own filter */ };
// page configuration
int iMaxItemPerPage = 2;
int iCurrentPage = 0;
int iStartIndex = iCurrentPage * iMaxItemPerPage;
// déterminer les objects "de la page"
int iCurrentIndex = 0;
HashSet<object> hsObjectsInPage = new HashSet<object>();
foreach (object oObject in cvCollectionView)
{
// break if MaxItemCount is reached
if (hsObjectsInPage.Count > iMaxItemPerPage)
break;
// add if StartIndex is reached
if (iCurrentIndex >= iStartIndex)
hsObjectsInPage.Add(oObject);
// increment
iCurrentIndex++;
}
// refilter
cvCollectionView.Filter = p_oObject =>
{
return hsObjectsInPage.Contains(p_oObject);
};
Perché dovresti preoccuparti di rispondere a una domanda vecchia che ha una risposta selezionata? – Edward
Eventuali duplicati di http://stackoverflow.com/questions/784726/how-can-i-paginate-a-wpf-datagrid –