Back to Devexpress

ReminderEventArgs.AlertNotifications Property

corelibraries-devexpress-dot-xtrascheduler-dot-remindereventargs.md

latest4.7 KB
Original Source

ReminderEventArgs.AlertNotifications Property

Gets any reminders currently triggered.

Namespace : DevExpress.XtraScheduler

Assembly : DevExpress.XtraScheduler.v25.2.Core.dll

NuGet Package : DevExpress.Scheduler.Core

Declaration

csharp
public ReminderAlertNotificationCollection AlertNotifications { get; }
vb
Public ReadOnly Property AlertNotifications As ReminderAlertNotificationCollection

Property Value

TypeDescription
ReminderAlertNotificationCollection

A ReminderAlertNotificationCollection object which holds a collection of notifications.

|

Remarks

The SchedulerStorageBase.ReminderAlert event is raised when a reminder alert is invoked. Note that multiple reminders can trigger at the same time. Use the AlertNotifications property to access these reminders. Each notification is represented by a ReminderAlertNotification object.

Example

The following example demonstrates how to manually handle reminders and perform a custom action when the SchedulerStorageBase.ReminderAlert event is fired.

Note

A complete sample project is available at https://github.com/DevExpress-Examples/winforms-scheduler-create-appointments-on-reminder-alert

csharp
// Handle this event to perform a custom action when a reminder alert is fired.
    schedulerStorage1.ReminderAlert += SchedulerStorage1_ReminderAlert;
    // Specify the interval at which the reminder is polled for alert.
    schedulerStorage1.RemindersCheckInterval = checkInterval * 1000;
    // Hide the reminder alert window.
    schedulerControl1.OptionsBehavior.ShowRemindersForm = false;
private void SchedulerStorage1_ReminderAlert(object sender, ReminderEventArgs e) {
    // Create a new appointment.
    Appointment app = schedulerStorage1.CreateAppointment(AppointmentType.Normal);
    app.Subject = "Created on alert from appointment w/Price = " + e.AlertNotifications[0].ActualAppointment.CustomFields["CustomPrice"];
    app.Start = e.AlertNotifications[0].ActualAppointment.Start.AddHours(2);
    app.Duration = TimeSpan.FromHours(4);
    schedulerStorage1.Appointments.Add(app);

    // Modify the appointment for which the alert is triggered.
    e.AlertNotifications[0].ActualAppointment.LabelKey = 3;

    // Prevent the event from being fired one more time.
    e.AlertNotifications[0].ActualAppointment.Reminder.Dismiss();
}
vb
' Handle this event to perform a custom action when a reminder alert is fired.
    AddHandler schedulerStorage1.ReminderAlert, AddressOf SchedulerStorage1_ReminderAlert
    ' Specify the interval at which the reminder is polled for alert.
    schedulerStorage1.RemindersCheckInterval = checkInterval * 1000
    ' Hide the reminder alert window.
    schedulerControl1.OptionsBehavior.ShowRemindersForm = False
Private Sub SchedulerStorage1_ReminderAlert(ByVal sender As Object, ByVal e As ReminderEventArgs)
    ' Create a new appointment.
    Dim app As Appointment = schedulerStorage1.CreateAppointment(AppointmentType.Normal)
    app.Subject = "Created on alert from appointment w/Price = " + e.AlertNotifications(0).ActualAppointment.CustomFields("CustomPrice").ToString()
    app.Start = e.AlertNotifications(0).ActualAppointment.Start.AddHours(2)
    app.Duration = TimeSpan.FromHours(4)
    schedulerStorage1.Appointments.Add(app)

    ' Modify the appointment for which the alert is triggered.
    e.AlertNotifications(0).ActualAppointment.LabelKey = 3

    ' Prevent the event from being fired one more time.
    e.AlertNotifications(0).ActualAppointment.Reminder.Dismiss()
End Sub

See Also

ReminderEventArgs Class

ReminderEventArgs Members

DevExpress.XtraScheduler Namespace