public CalligrapherViewModel() { _viewSource = new CollectionViewSource(); ObservableCollection <Calligraphyer> calligraphyers = CalligrapherDataHelper.Load(); _viewSource.Source = calligraphyers; }
//void View_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) //{ // if (e.Action == System.Collections.Specialized.NotifyCollectionChangedAction.Add) // { // CalligrapherDataHelper.Insert((Calligraphyer)e.NewItems[0]); // } //} public void AddCalligrapher() { Calligraphyer calligraphyer = new Calligraphyer(); calligraphyer.Name = "书法家"; calligraphyer.Description = "简介"; ((ObservableCollection <Calligraphyer>)_viewSource.Source).Add(calligraphyer); calligraphyer.Status = EntityBase.Statuses.New; ; CalligrapherDataHelper.Save((ObservableCollection <Calligraphyer>)_viewSource.Source); }
//private static bool NotDelected(EntityBase entityBase) //{ // return entityBase.Status != EntityBase.Statuses.Delete; //} public CalligrapherViewModel() { _viewSource = new CollectionViewSource(); ObservableCollection <Calligraphyer> calligraphyers = CalligrapherDataHelper.Load(); _viewSource.Source = calligraphyers; //_viewSource.View.CurrentChanged += View_CurrentChanged; //_viewSource.View.Filter = new Predicate<object>((o) => { return ((EntityBase)o).Status != EntityBase.Statuses.Delete; }); //_viewSource.View.CollectionChanged += View_CollectionChanged; }
public void Save() { CalligrapherDataHelper.Save((ObservableCollection <Calligraphyer>)_viewSource.Source); }
public void Delete(Calligraphyer c) { ((ObservableCollection <Calligraphyer>)_viewSource.Source).Remove(c); c.Status = EntityBase.Statuses.Delete; CalligrapherDataHelper.Save(c); }
public void Delete(int count) { CalligrapherDataHelper.DeleteOne((ObservableCollection <Calligraphyer>)_viewSource.Source, count); _viewSource.Source = CalligrapherDataHelper.Load(); }
public void Clear() { CalligrapherDataHelper.DeleteAll((ObservableCollection <Calligraphyer>)_viewSource.Source); _viewSource.Source = CalligrapherDataHelper.Load(); }