protected override RepositoryItemPopupBase CreateRepositoryItem() { item = base.CreateRepositoryItem() as RepositoryItemPopupContainerEdit; if (DateFilterControl.Controls.Count > 0) { DateCalendar1 = CreateCalendar(DateCalendar1, DateCalendar.SelectionStart, DateCalendar.Top, DateCalendar.Left); DateCalendar1.Visible = false; DateCalendar2 = CreateCalendar(DateCalendar2, DateCalendar.SelectionStart, DateCalendar1.Top, DateCalendar.Left + DateCalendar1.Width); DateCalendar2.Visible = false; Greater = GetCheckEditByName(Localizer.Active.GetLocalizedString(StringId.FilterClauseGreater)); Less = GetCheckEditByName(Localizer.Active.GetLocalizedString(StringId.FilterClauseLess)); Between = GetCheckEditByName(Localizer.Active.GetLocalizedString(StringId.FilterClauseBetween)); Greater.CheckedChanged += CheckedChanged; Less.CheckedChanged += CheckedChanged; Between.CheckedChanged += CheckedChanged; foreach (Control ctrl in DateFilterControl.Controls) { if (ctrl is CheckEdit) { if (NotOurControl(ctrl as CheckEdit)) { (ctrl as CheckEdit).CheckedChanged += OriginalDateFilterPopup_CheckedChanged; } } } } return(item); }
protected override RepositoryItemPopupBase CreateRepositoryItem() { item = base.CreateRepositoryItem() as RepositoryItemPopupContainerEdit; DateFilterControl = item.PopupControl.Controls.OfType <PopupOutlookDateFilterControl>().First(); customCheck = GetCheckEdit(); customCheck.Visible = false; if (View.treeListSource != null && DateFilterControl.Controls.Count > 0) { CreateTreeList(); DateFilterControl.Controls.Add(treelist); foreach (Control ctrl in DateFilterControl.Controls) { CheckEdit ce = (ctrl as CheckEdit); if (ce != null) { if (ce.Text != View.customName) { ce.CheckedChanged += OriginalDateFilterPopup_CheckedChanged; } } else { DateControlEx dateControlEx = (ctrl as DateControlEx); if (dateControlEx != null) { dateControlEx.Click += dateControlEx_Click; } } } item.PopupFormMinSize = new Size(440, 280 + treelist.Height); } return(item); }
public override void Dispose() { if (DateCalendar1 != null) { DateCalendar1.EditDateModified -= DateCalendar_SelectionChanged; } if (DateCalendar2 != null) { DateCalendar2.EditDateModified -= DateCalendar_SelectionChanged; } foreach (Control ctrl in DateFilterControl.Controls) { if (ctrl is CheckEdit) { if (NotOurControl(ctrl as CheckEdit)) { (ctrl as CheckEdit).CheckedChanged -= OriginalDateFilterPopup_CheckedChanged; } } } try { this.View.ActiveFilterString = GetFilterCriteriaByControlState().ToString(); } catch { } DateCalendar1.Dispose(); DateCalendar2.Dispose(); base.Dispose(); if (dateCalendar != null) { dateCalendar.Dispose(); dateCalendar = null; } if (Greater != null) { Greater.Dispose(); Greater = null; } if (Less != null) { Less.Dispose(); Less = null; } if (Between != null) { Between.Dispose(); Between = null; } if (dateFilterControl != null) { dateFilterControl.Dispose(); dateFilterControl = null; } if (item != null) { item.Dispose(); item = null; } }
DateControlEx CreateCalendar(DateControlEx calendar, DateTime dateTime, int top, int left) { calendar = new DateControlEx(); calendar.DateTime = dateTime; calendar.Top = top; calendar.Left = left; calendar.EditDateModified += DateCalendar_SelectionChanged; DateFilterControl.Controls.Add(calendar); return(calendar); }
private void SetDateCalendar(PopupOutlookDateFilterControl dateFilterControl) { foreach (Control c in dateFilterControl.Controls) { if (c is DateControlEx) { dateCalendar = c as DateControlEx; break; } } }