protected void ChangeSelectedDate(DateTime?date) { if (!date.HasValue) { return; } var button = buttons.Find(b => b.Date.HasValue && b.Date.Value.Date == date.Value.Date); if (button == null) { return; } buttons.FindAll(b => b.IsSelected).ForEach(b => { var spD = SpecialDates?.FirstOrDefault(s => s.Date.Date == b.Date.Value.Date); SetButtonNormal(b, !b.IsOutOfMonth); if (spD != null) { SetButtonSpecial(b, spD); } }); SetButtonSelected(button, !button.IsOutOfMonth); DateClicked?.Invoke(this, new DateTimeEventArgs { DateTime = SelectedDate.Value }); DateCommand?.Execute(SelectedDate.Value); }
protected bool ChangeSelectedDate(DateTime?date, bool clicked = true) { if (!date.HasValue) { return(false); } if (SelectedDates.Count() > 0)//check if there is a selected date { int result = DateTime.Compare((System.DateTime)date, SelectedDates[0]); if (result == 0)//Equal Dates { return(false); } } if (!MultiSelectDates) { buttons.FindAll(b => b.IsSelected).ForEach(b => ResetButton(b)); SelectedDates.Clear(); } SelectedDates.Add(SelectedDate.Value.Date); var button = buttons.Find(b => b.Date.HasValue && b.Date.Value.Date == date.Value.Date && b.IsEnabled); if (button == null) { return(false); } var deselect = button.IsSelected; if (button.IsSelected) { ResetButton(button); } else { SelectedDates.Add(SelectedDate.Value.Date); var spD = SpecialDates?.FirstOrDefault(s => s.Date.Date == button.Date.Value.Date); SetButtonSelected(button, spD); } if (clicked) { DateClicked?.Invoke(this, new DateTimeEventArgs { DateTime = SelectedDate.Value }); DateCommand?.Execute(SelectedDate.Value); } return(deselect); }
protected bool ChangeSelectedDate(DateTime?date, bool clicked = true) { if (!date.HasValue) { return(false); } if (!MultiSelectDates) { buttons.FindAll(b => b.IsSelected).ForEach(b => ResetButton(b)); SelectedDates.Clear(); } AddDateIfNotExist(SelectedDate.Value.Date); var button = buttons.Find(b => b.Date.HasValue && b.Date.Value.Date == date.Value.Date && b.IsEnabled); if (button == null) { return(false); } var deselect = button.IsSelected; if (button.IsSelected) { ResetButton(button); } else { AddDateIfNotExist(SelectedDate.Value.Date); var spD = SpecialDates?.FirstOrDefault(s => s.Date.Date == button.Date.Value.Date); SetButtonSelected(button, spD); } if (clicked) { DateClicked?.Invoke(this, new DateTimeEventArgs { DateTime = SelectedDate.Value }); DateCommand?.Execute(SelectedDate.Value); } return(deselect); }
protected bool ChangeSelectedDate(DateTime?date, bool clicked = true) { if (!date.HasValue) { return(false); } if (!MultiSelectDates) { buttons.FindAll(b => b.IsSelected).ForEach(b => ResetButton(b)); SelectedDates?.Clear(); } if (MinDate.HasValue && date.Value < MinDate.Value) { return(false); } if (buttons.Count == 0) { SelectedDates?.Add(SelectedDate.Value.Date); } var button = buttons.Find(b => b.Date.HasValue && b.Date.Value.Date == date.Value.Date && b.IsEnabled); if (button == null) { return(false); } var deselect = button.IsSelected; if (button.IsSelected) { if (SelectRange && SelectedDates?.Count() > 2) { UnfillSelectedRange(SelectedDate.Value.Date); } else { ResetButton(button); if (SelectedDates?.Count() == 1) { button = buttons.Find(b => b.Date.HasValue && b.Date.Value.Date == SelectedDates?.First() && b.IsEnabled); if (button != null) { SetButton(button); } } } } else { if (SelectedDates != null) { if (SelectRange && SelectedDates.Any()) { FillSelectedRange(SelectedDate.Value.Date); } else { SelectedDates?.Add(SelectedDate.Value.Date); var spD = SpecialDates?.FirstOrDefault(s => s.Date.Date == button.Date.Value.Date); SetButtonSelected(button, spD); } } } if (clicked) { DateClicked?.Invoke(this, new DateTimeEventArgs { DateTime = SelectedDate.Value }); DateCommand?.Execute(SelectedDate.Value); } return(deselect); }
private void DayView_TouchUpInside(object sender, EventArgs e) { IBareUICalendarDayView dayView = (IBareUICalendarDayView)sender; DateClicked?.Invoke(this, dayView.Date); }
private void MonthView_DateClicked(object sender, DateTime e) { DateClicked?.Invoke(this, e); }
private void Calendar_Clicked(object sender, EventArgs e) { DateClicked?.Invoke(sender, e); //await ("Demo Project", "Date Clicked " + item.Text, "Ok"); }
protected virtual void OnDateClicked(EventArgs e) { DateClicked?.Invoke(this, e); }