Beispiel #1
0
        public MainWindow()
        {
            hospital = new HospitalDb();

            mainWindowViewModel = new MainWindowViewModel(hospital);
            mainWindowViewModel.ChangeDoctorsEvent += () =>
            {
                logger.Information("Doctors was changed");
            };
            DataContext = mainWindowViewModel;

            logger.SubLog += (o, mss) =>
            {
                this.Dispatcher.Invoke(async() =>
                {
                    await ChangeAmauntRows();
                    var t = ProgresBarWorkAsync(defaultDelayToUI.Seconds);
                    await WriteToStatusString(mss);
                    await t;
                });

                MainDataGrid.SelectedItem = null;
            };

            InitializeComponent();

            ChangeAmauntRows().Wait();
        }
Beispiel #2
0
        public DoctorsViewModel(HospitalDb h) : this()
        {
            this.h = h;

            _doctors = h.Hospital.Doctors.Local;
            Doctors  = new ReadOnlyObservableCollection <Doctor>(_doctors);
        }
        public MainWindowViewModel(HospitalDb hospitalDb)
        {
            DoctorsViewModel = new Doctors.DoctorsViewModel(hospitalDb);
            Doctors          = DoctorsViewModel.Doctors;

            AddNewDoctor = new AddNewDoctorCommand((d) => {
                DoctorsViewModel.AddDoctor(d.Name, d.Surname, d.Qualification);
                OnChangeDoctorEvent();
            });

            RemoveDoctorCommand = new RemoveDoctorsCommand((i) => {
                RemoveManyRows(i as IEnumerable <Doctor>, (o) => DoctorsViewModel.RemoveDoctor(o));
            });

            UpdateDoctorCommand = new RemoveDoctorsCommand(UpdateManyRows);
        }
Beispiel #4
0
 public HospitalShedule(HospitalDb hospitalDb)
 {
     this.hospitalDb = hospitalDb;
 }