SchedulerControl.RemindersFormShowing Event

Occurs before the Reminders form is displayed.

Namespace: DevExpress.XtraScheduler

Assembly: DevExpress.XtraScheduler.v20.1.dll

Declaration

public event RemindersFormEventHandler RemindersFormShowing
Public Event RemindersFormShowing As RemindersFormEventHandler

Event Data

The RemindersFormShowing event's data class is RemindersFormEventArgs. The following properties provide information specific to this event:

Property Description
AlertNotifications Gets any reminders currently triggered.
DialogResult Gets or sets the return value of a dialog box. Inherited from ShowFormEventArgs.
Handled Gets or sets whether an event was handled, if it was handled the default actions are not required. Inherited from ShowFormEventArgs.
Parent Gets or sets a parent of the form being shown. Inherited from ShowFormEventArgs.

Remarks

The XtraScheduler control supports reminders for appointments. A reminder can be invoked a specific interval before an appointment's start time. If the SchedulerOptionsBehaviorBase.ShowRemindersForm property is set to true, the Reminders form is displayed when a reminder is invoked. This form contains all the reminders invoked at this time.

The RemindersFormShowing event fires before the Reminders form is displayed. It allows the default Reminders form to be replaced with a custom form. The reminders currently invoked can be accessed via the AlertNotifications parameter.

Set the Handled parameter to true to prevent the default Reminders form from being invoked after the event handler has completed.

The DialogResult parameter is ignored for the RemindersFormShowing event.

NB. It's also possible to respond to reminders being invoked by handling the SchedulerStorageBase.ReminderAlert event. It occurs even if the SchedulerOptionsBehaviorBase.ShowRemindersForm property is set to false and does not require the SchedulerControl. So you can implement reminder functionality without a visible scheduler.

This code snippet illustrates how you can invoke the Reminders form from within the SchedulerControl.RemindersFormShowing event handler and exclude alerts from it based on certain conditions.

using DevExpress.XtraScheduler;
using DevExpress.XtraScheduler.Forms;
        void schedulerControl1_RemindersFormShowing(object sender, RemindersFormEventArgs e)
        {
            ReminderAlertNotificationCollection alerts = new ReminderAlertNotificationCollection();
            foreach (ReminderAlertNotification alert in e.AlertNotifications) {
                if (alert.ActualAppointment.StatusKey.ToString() == "1")
                    alerts.Add(alert);
            }
            if (alerts.Count > 0) {
                RemindersForm remindersForm = new RemindersForm((SchedulerControl)sender);
                ReminderEventArgs args = new ReminderEventArgs(alerts);
                remindersForm.FormClosed += new FormClosedEventHandler(remindersForm_FormClosed);
                remindersForm.OnReminderAlert(args);
            }
            e.Handled = true;
        }
See Also