J'ai étendu un ListCollectionView et overridded GetItemAt comme ceci:Obtenez élément interne pas de ListCollectionView
public class LazyLoadListCollectionView : ListCollectionView
{
public override object GetItemAt(int index)
{
object rc = base.GetItemAt(index);
// do something
return rc;
}
}
Maintenant pour mon « faire quelque chose » je besoin de la position de l'élément dans la liste interne. Tant que ListCollectionView n'est pas trié, "index" de ListCollectionView sera le même pour la collection interne, mais dès que ListCollectionView est utilisé, index correspond à l'index de la collection interne (la collection interne étant ObservableCollection).
Alors, où ListCollectionView obtient-il l'index des collections internes de l'index dans ListCollectionView? Ne devrait-il pas y avoir un "int ConvertToInternalIndex (int index)" quelque part?
. Qu'essayez-vous de faire? Je pense, vous devez d'abord explorer [ListCollectionView] (http://msdn.microsoft.com/en-us/library/system.windows.data.listcollectionview_properties.aspx) d'abord, car il est capable de s'adapter à la plupart des scénarios que les programmeurs veulent habituellement mettre en œuvre dans leur application. – Nawaz