public KursUebersichtViewModel()
        {
            Kurse = new ObservableCollection<KursViewModel>();

            AddKursCommand = new RelayCommand(() =>
                {
                    var k = new KursViewModel(new Kurs());
                    Kurse.Add(k);
                    SelectedKurs = k;
                });

            DeleteKursCommand = new RelayCommand(() =>
                {
                    if (SelectedKurs == null)
                        return;

                    if (MessageBox.Show("Wollen Sie wirklich den Kurs " + SelectedKurs.Model.Name + " löschen?",
                                        "Wirklich löschen?", MessageBoxButton.YesNo) != MessageBoxResult.Yes)
                        return;

                    SelectedKurs.Delete();
                    Kurse.Remove(SelectedKurs);
                    SelectFirstKurs();
                });

            ReloadKurseCommand = new RelayCommand(GetKurse);

            GetKurse();
        }
示例#2
0
        public KursDetailsViewModel()
        {
            if (IsInDesignMode)
            {
                SelectedKurs = new KursViewModel(Design.DesignDataService.GetKurs(0));
            }

            Messenger.Default.Register<PropertyChangedMessage<KursViewModel>>(this,
                message =>
                    {
                        SelectedKurs = null;
                        SelectedKurs = message.NewValue;
                    });

            SaveCommand = new RelayCommand(() => { if (SelectedKurs != null) SelectedKurs.Save(); });
        }
 // Damit z.B. beim Löschen von einem Kurs nicht das Model im KursDetailsViewModel null gesetzt wird.
 private void SelectFirstKurs()
 {
     if (Kurse.Count > 0)
         SelectedKurs = Kurse.First();
 }