private void LocalPackagesOnCollectionChanged(object sender,
                                                      NotifyCollectionChangedEventArgs e)
        {
            switch (e.Action)
            {
            case NotifyCollectionChangedAction.Add:
                foreach (var item in e.NewItems)
                {
                    LocalPackages.Add(new PackageViewModel(dynamoViewModel, item as Package));
                }
                break;

            case NotifyCollectionChangedAction.Remove:
                foreach (var item in e.OldItems)
                {
                    LocalPackages.Remove(_localPackages.ToList().First(x => x.Model == item));
                }
                break;

            case NotifyCollectionChangedAction.Reset:
                LocalPackages.Clear();
                break;
            }

            RaisePropertyChanged("LocalPackages");
        }
        private void InitializeLocalPackages()
        {
            foreach (var pkg in Model.LocalPackages)
            {
                LocalPackages.Add(new PackageViewModel(this.dynamoViewModel, pkg));
            }


            this.Model.LocalPackages.CollectionChanged += LocalPackagesOnCollectionChanged;
        }
Пример #3
0
        private void InitializeLocalPackages()
        {
            foreach (var pkg in Model.LocalPackages)
            {
                LocalPackages.Add(new PackageViewModel(this.dynamoViewModel, pkg));
            }

            this.Model.PackageAdded += (pkg) =>
            {
                LocalPackages.Add(new PackageViewModel(dynamoViewModel, pkg));
                RaisePropertyChanged("LocalPackages");
            };

            this.Model.PackageRemoved += (pkg) =>
            {
                LocalPackages.Remove(_localPackages.ToList().First(x => x.Model == pkg));
                RaisePropertyChanged("LocalPackages");
            };
        }