/// <summary> /// Initializes a new instance of the <see cref="VirtualPagingItemViewModel{TItem, TModel}"/> class. /// </summary> /// <param name="parent">The parent.</param> /// <param name="container">The container.</param> /// <param name="createVmFunc">The create vm function.</param> public VirtualPagingItemViewModel(PagingScreenViewModel parent, VirtualContainer <TModel> container, Func <TModel, Task <TItem> > createVmFunc) { SetParent(parent); Index = container.Index; _container = container; _createVmFunc = createVmFunc; _container.NotifyOn("Model", OnModelArrived); }
/// <summary> /// Initializes a new instance of the <see cref="VirtualPagingItemViewModel{TItem, TModel}"/> class. /// </summary> /// <param name="parent">The parent.</param> /// <param name="container">The container.</param> /// <param name="createVmFunc">The create vm function.</param> public VirtualPagingItemViewModel(PagingScreenViewModel parent, VirtualContainer <TModel> container, Func <TModel, TItem> createVmFunc) : this(parent, container, model => Task <TItem> .Factory.StartNew(() => createVmFunc(model))) { }
private void SetParent(PagingScreenViewModel parent) { Parent = parent; }