private void OnDaySelected(DaySelected args) { if (BindingContext is MainPageViewModel viewModel) { viewModel.AddEventsOfDay(args.Events); } }
private void Day_MouseUp(object sender, MouseButtonEventArgs e) { var day = GetDay(sender); if (day == null) { return; } switch (e.ChangedButton) { case MouseButton.Left: { //ничего не делаем, если зажат Shift/Ctrl - идёт мультиселект bool keyPressed = ((Keyboard.Modifiers & ModifierKeys.Shift) == ModifierKeys.Shift) || (Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control; if (m_selectingStartDay == 0) { HighLightDay(day, false, keyPressed); SetEmptySelection(); } else { DaySelected?.Invoke(day); //if (m_selectingDays.Count > 0) SelectedDaysOut = m_selectingDays.ToList(); var set = GetSet(); if (set == null) { return; } if (IsMultiselecting()) { set.Sort(new DateTime(Month.Year, Month.Index, m_selectingDays.Min().Index), new DateTime(Month.Year, Month.Index, m_selectingDays.Max().Index)); } else { set.Sort(new DateTime(Month.Year, Month.Index, day.Index)); } //Sort(SortManager.SelectByDay(m_baseCollection, day.Index)); } } break; default: break; } //todo : select }
public void ClickHeaderTest() { DaySelected dayNotify = new DaySelected(); DateTime date = new DateTime(2010, 1, 1); SchedulerDayModel day = new SchedulerDayModel(new SchedulerDisplayInfo(new CultureInfo("cs-CZ")), date); day.SetDate(date); SchedulerMonthDayHeaderViewModel target = new SchedulerMonthDayHeaderViewModel(dayNotify, day); Assert.IsNull(dayNotify.Day, "Day should be null."); ICommand command = target.ClickHeaderCommand; command.Execute(null); Assert.IsNotNull(dayNotify.Day, "Day should be assigned."); Assert.AreEqual(date, dayNotify.Day.Date, "Date should be 1/1/2010."); }
private void Control_Click(object sender, MouseEventArgs e) { if (!RaiseEvents) { return; } if (e.Button != MouseButtons.Left) { return; } if (!Day.BelongsToSchedules) { return; } DaySelected?.Invoke(this, new SelectDayEventArgs(this, ModifierKeys)); }
private void CheckBox_SelectionChanged(object sender, bool e) { var index = (sender as UIView).Tag; var dayIntValue = index + 1; if (Enum.TryParse <DayOfWeek>(dayIntValue.ToString(), out var day)) { if (e) { DaySelected?.Invoke(this, day); } else { DayUnSelected?.Invoke(this, day); } } }
public void ClickHeaderTest() { DaySelected dayNotify = new DaySelected(); DateTime date = new DateTime(2010, 1, 1); SchedulerDayModel day = new SchedulerDayModel(new SchedulerDisplayInfo(new CultureInfo("cs-CZ")), date); day.SetDate(date); SchedulerDayHeaderViewModel target = new SchedulerDayHeaderViewModel(dayNotify, day); Assert.IsNull(dayNotify.Day, "Day should be null."); ICommand command = target.ClickHeaderCommand; command.Execute(null); Assert.IsNotNull(dayNotify.Day, "Day should be assigned."); Assert.AreEqual(date, dayNotify.Day.Date, "Date should be 1/1/2010."); }
public MonthViewModel(int month, int year) { MonthInt = month; YearInt = year; var firstDayOfMonth = new DateTime(year, month, 1); var weekDaysBeforeFirstDay = GetWeekDay(firstDayOfMonth); var days = new List <DayViewModel>(); for (var i = 0; i < weekDaysBeforeFirstDay; i++) { days.Add(new DayViewModel(0)); } var daysInMonth = new DateTime(year, month, 1).AddMonths(1).AddDays(-1).Day; for (var i = 1; i <= daysInMonth; i++) { var currentI = i; days.Add(new DayViewModel(i)); } var remainingDaysInMonth = 6 - GetWeekDay(new DateTime(year, month, daysInMonth)); for (var i = 0; i < remainingDaysInMonth; i++) { days.Add(new DayViewModel(0)); } foreach (var day in days) { day.DaySelected += sel => DaySelected?.Invoke(sel); } Days = days; Year = year.ToString(); Month = firstDayOfMonth.ToString("MMMM"); }
private void Day_MouseDown(object sender, MouseButtonEventArgs e) { var day = GetDay(sender); if (day == null) { return; } if (e.ChangedButton == MouseButton.Left) { m_selectingStartDay = m_selectingStartDay == day.Index ? 0 : day.Index; //изменяем подсветку для Дня при клике // кликнули первый раз - подсветили // кликнули повторно - убрали //if (!HasHightlighted(day)) //{ bool isMultyselecting = ((Keyboard.Modifiers & ModifierKeys.Shift) == ModifierKeys.Shift) || (Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control; HighLightDay(day, true, isMultyselecting); DaySelected?.Invoke(day); //NameSearchText = string.Empty; Keyboard.ClearFocus(); //} } else if (e.ChangedButton == MouseButton.Right) { DownlightDays(); SetEmptySelection(); } }
public void SendDaySelected() { DaySelected?.Invoke(this, EventArgs.Empty); }
private void OnDaySelected(DaySelected daySelected) { SelectedDay.Text = daySelected.DateTime.ToString("G"); AmountEvents.Text = daySelected.Events.Count().ToString(); }
private void OnDaySelected(object _, EventArgs __) => DaySelected?.Invoke(this);
void daySelected(object sender, DaySelectedEventArgs e) { DaySelected.Invoke(sender, e); }
void OnEventClick(object sender, RoutedEventArgs e) { Button source = (Button)sender; DaySelected.Invoke(sender, new DaySelectedEventArgs((long)source.Tag)); }