Реализация ILoopingSelectorDataSource. вернуть null в GetPrevious / GetNext в начале / конце списка.
например. Загрузите последний инструментарий, закомментируйте возвращение GetNext. Обратите внимание на то, что теперь при запуске примера не показываются следующие элементы, и поэтому он не зацикливается.
abstract class DataSource : ILoopingSelectorDataSource
{
private DateTimeWrapper _selectedItem;
public object GetNext(object relativeTo)
{
DateTime? next = GetRelativeTo(((DateTimeWrapper)relativeTo).DateTime, 1);
return null;// next.HasValue ? new DateTimeWrapper(next.Value) : null;
}
public object GetPrevious(object relativeTo)
{
DateTime? next = GetRelativeTo(((DateTimeWrapper)relativeTo).DateTime, -1);
return next.HasValue ? new DateTimeWrapper(next.Value) : null;
}