public partial class MainWindow : Window{ public MainWindow() { InitializeComponent(); var service = new NorthwindEntities(new Uri("http://services.odata.org/Northwind/Northwind.svc/")); DataContext = new VirtualQueryableCollectionView(service.Customers) { LoadSize = 10 }; }}public class CustomVirtualQueryableCollectionView<T> : VirtualQueryableCollectionView{ private readonly IQueryable<T> query; private readonly DataServiceContext context; private readonly DataServiceCollection<T> dataServiceCollection; public CustomVirtualQueryableCollectionView(DataServiceContext context, IQueryable<T> source) : base(source) { this.context = context; this.query = source; this.dataServiceCollection = new DataServiceCollection<T>(); } protected override IQueryable CreateView() { if (this.IsGrouped) { // Load all data from the WCF Data Service since GroupBy is not supported! this.dataServiceCollection.Load(this.query); while (this.dataServiceCollection.Continuation != null) { this.dataServiceCollection.Load(context.Execute<T>(this.dataServiceCollection.Continuation.NextLinkUri)); } // Group data in-memory. return this.dataServiceCollection.AsQueryable().GroupBy(this.GroupDescriptors); } return base.CreateView(); }} Vladimir Enchev is Director of Engineering, Native Mobile UI & Frameworks