Dynamic Load for a ListView para Xamarin Forms

He creado un ListView que carga dinamicamente los items según la BindableProperty «ItemsPerPage».

dynamic-list-scrolling

Es una lista de tipos genéricos, por lo que a la hora de agregarla en xaml hay que especificar el tipo de la siguiente manera:

 

La BindableProperty FullItemsSource es la encargada de guardar todos nuestros items, mientras que la propiedad ItemSource mostrará los items que se vayan cargando a medida que se vaya haciendo scroll.

Si haceis una carga de datos de manera extraña (invocando a algún pokemon o desde el navigationService u otra manera arcana…) es posible que la primera vez que se muestra la página, los elementos de la lista no sean visibles; para ello podéis «arreglarlo» añadiendo las siguientes líneas al método OnItemAppearing (antes de la comprobación del índice del item):