Example #1
0
        private FoxePageTreeViewItem CreateExapndablePageTreeItem(FoxePage foxePage)
        {
            FoxePageTreeViewItem item = new FoxePageTreeViewItem(foxePage);

            //item.Items.Add(new FoxeProcessingTreeViewItem());
            if (foxePage.Products.Count >= 1)
            {
                item.Items.Add(new FoxeProcessingTreeViewItem());
            }
            return(item);
        }
Example #2
0
        private async Task UsrExapandedPageTreeViewItem(FoxePageTreeViewItem item)
        {
            if ((item.Items.Count == 1) && (item.Items[0] is FoxeProcessingTreeViewItem))
            {
                if (item.Tag is FoxePage)
                {
                    var foxePage = item.Tag as FoxePage;

                    // Expanding Page --(should give)--> Products
                    await AddProductsUnderPage(item, foxePage);
                }
            }
        }
Example #3
0
        private async void foxeTreeView_Expanded(object sender, RoutedEventArgs e)
        {
            if (e.Source is FoxeCategoryTreeViewItem)
            {
                FoxeCategoryTreeViewItem item = e.Source as FoxeCategoryTreeViewItem;
                await UsrExapandedCategoryTreeViewItem(item);
            }

            if (e.Source is FoxePageTreeViewItem)
            {
                FoxePageTreeViewItem item = e.Source as FoxePageTreeViewItem;
                await UsrExapandedPageTreeViewItem(item);
            }
        }
Example #4
0
        private async Task AddProductsUnderPage(FoxePageTreeViewItem pageTreeViewItem, FoxePage foxePage)
        {
            var synchronizationContext = TaskScheduler.FromCurrentSynchronizationContext();
            var cancellationToken      = new CancellationToken();

            await Task.Factory.StartNew(() =>
            {
                pageTreeViewItem.Items.Clear();
                foreach (var foxeProduct in foxePage.Products)
                {
                    var productTreeViewItem = new FoxeProductTreeViewItem(foxeProduct);
                    productTreeViewItem.Tag = foxeProduct;
                    pageTreeViewItem.Items.Add(productTreeViewItem);
                }
            }, cancellationToken, TaskCreationOptions.None, synchronizationContext);
        }