Exemplo n.º 1
0
        private void RemoveFromGroup(CalendarEvent calendarEvent)
        {
            var start = calendarEvent.Start.Date;

            while (start < calendarEvent.End.Date)
            {
                if (!_dayItemsSource.ContainsKey(start))
                {
                    break;
                }

                _dayItemsSource[start].Remove(calendarEvent);
                _dayItemsSource[start].Refresh();
                start = start.AddDays(1);
            }
            _allEvents.Remove(calendarEvent);


            // 当Refresh时总是会默认选中第一项(执行CurrentChanged)
            var temp = _activeTime;

            AllEventsView.Refresh();

            if (temp.Month == _activeTime.Month && calendarEvent.Is <Holiday>())
            {
                SummarizeActiveMonth();
            }

            ActiveTime = temp;
        }
Exemplo n.º 2
0
        private void AddToGroup(IEnumerable <CalendarEvent> calendarEvents)
        {
            var           anyHolidayAdd          = false;
            CalendarEvent lastAddedCalendarEvent = null;

            foreach (var calendarEvent in calendarEvents)
            {
                var start = calendarEvent.Start.Date;
                while (start < calendarEvent.End.Date)
                {
                    if (!_dayItemsSource.ContainsKey(start))
                    {
                        _dayItemsSource[start] = new DayItemModel(start);
                    }

                    if (calendarEvent.Is <DaylightSavingTime>())
                    {
                        _dayItemsSource[start].Insert(0, calendarEvent);
                    }
                    else
                    {
                        _dayItemsSource[start].Add(calendarEvent);
                    }

                    _dayItemsSource[start].Refresh();
                    //CollectionViewSource.GetDefaultView(_dayItemsSource[start])
                    //    .Self(v =>
                    //    {   //可防止删除calendarEvent的时候未选中项
                    //        v.MoveCurrentToFirst();
                    //    });
                    start = start.AddDays(1);
                }
                _allEvents.Add(calendarEvent);
                if (calendarEvent.Is <Holiday>())
                {
                    anyHolidayAdd = true;
                }

                lastAddedCalendarEvent = calendarEvent;
            }

            AllEventsView.Refresh();
            if (lastAddedCalendarEvent != null)
            {
                AllEventsView.MoveCurrentTo(lastAddedCalendarEvent);
            }

            if (anyHolidayAdd)
            {
                SummarizeActiveMonth();
            }
        }
Exemplo n.º 3
0
        private void Event_Click(object sender, RoutedEventArgs e)
        {
            AllEventsView allEventsView = new AllEventsView();
            var           vm            = new AllEventsViewModel
                                          (
                mainWindowViewModel.ProgramService,
                mainWindowViewModel.ProjectService,
                mainWindowViewModel.ProgramTypeService,
                mainWindowViewModel.BatteryService,
                mainWindowViewModel.TesterService,
                mainWindowViewModel.ChannelService,
                mainWindowViewModel.ChamberService,
                mainWindowViewModel.BatteryTypeService
                                          );

            allEventsView.DataContext = vm;// new AllEventsViewModel(/*EventService*/);
            allEventsView.ShowDialog();
        }