コード例 #1
0
        private void filter_TextChanged(object sender, TextChangedEventArgs e)
        {
            if (searchBar.Text != "")
            {
                // new cats
                var _searchedGroups = new ObservableCollection <ProductsCategory>();
                foreach (ProductsCategory category in clvm.ProductsCategory)
                {
                    ProductsCategory newCat = new ProductsCategory(category.Parent, new List <ProductViewModel>(), category.Expanded)
                    {
                        ProductCount = category.Count
                    };

                    if (category.Expanded)
                    {
                        foreach (var p in category)
                        {
                            if (p.Name.ToUpper().Contains(searchBar.Text.ToUpper()))
                            {
                                newCat.Add(p);
                            }
                        }
                    }

                    _searchedGroups.Add(newCat);
                }
                listeProduits.ItemsSource = _searchedGroups;
            }
            else
            {
                listeProduits.ItemsSource = clvm.ProductsCategory;
            }
        }
コード例 #2
0
        /// <summary>
        /// Crée le vue-modèle d'une catégorie et crée sa liste de produits correspondante
        /// </summary>
        /// <param name="category">La catégorie</param>
        public CategoryViewModel(Category category)
        {
            this.category = category;

            List <ProductViewModel> productsL = new List <ProductViewModel>();

            foreach (Product p in category.Products)
            {
                ProductViewModel productvm = new ProductViewModel(p);
                productsL.Add(productvm);
            }

            products = new ProductsCategory(this, productsL);

            foreach (ProductViewModel productvm in productsL)
            {
                productvm.Category = this;
            }
        }
コード例 #3
0
        /// <summary>
        /// Met à jour la liste de produits
        /// </summary>
        private void UpdateListContent()
        {
            _expandedGroups = new ObservableCollection <ProductsCategory>();
            foreach (ProductsCategory category in clvm.ProductsCategory)
            {
                ProductsCategory newCat = new ProductsCategory(category.Parent, new List <ProductViewModel>(), category.Expanded)
                {
                    ProductCount = category.Count
                };

                if (category.Expanded)
                {
                    foreach (ProductViewModel p in category)
                    {
                        newCat.Add(p);
                    }
                }

                _expandedGroups.Add(newCat);
            }
            listeProduits.ItemsSource = _expandedGroups;
        }