A newer version of this page is available. Switch to the current version.

SchedulerControl.InitNewAppointment Event

Occurs before a new AppointmentItem is created in the SchedulerControl.

Namespace: DevExpress.Xpf.Scheduling

Assembly: DevExpress.Xpf.Scheduling.v19.1.dll

Declaration

public event AppointmentItemEventHandler InitNewAppointment
Public Event InitNewAppointment As AppointmentItemEventHandler

Event Data

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

Property Description
Appointment Gets the appointment for which the element is raised.

Remarks

Handle the InitNewAppointment event to change the default AppointmentItem properties every time the appointment is created by an end-user.

The following code implements a special EventToCommand behavior that allows you to bind an SchedulerControl.InitNewAppointment event to a Delegate Command. The delegate command is generated automatically from a public InitNewAppointment method declared in a POCO View Model view model. Instead of passing event arguments to a method in a view model, the code specifies the NewAppointmentInitConverter converter that processes event arguments.

<dxmvvm:Interaction.Behaviors>
    <dxmvvm:EventToCommand EventName="InitNewAppointment" Command="{Binding InitNewAppointmentCommand}">
        <dxmvvm:EventToCommand.EventArgsConverter>
            <local:NewAppointmentInitConverter/>
        </dxmvvm:EventToCommand.EventArgsConverter>
    </dxmvvm:EventToCommand>
</dxmvvm:Interaction.Behaviors>

The NewAppointmentInitConverter converter changes the appointment's label and removes the default reminder.

using DevExpress.Mvvm.UI;
using DevExpress.Xpf.Scheduling;

namespace CustomMvvmFormWithRecurrenceExample {
    public class NewAppointmentInitConverter : EventArgsConverterBase<AppointmentItemEventArgs> {
        protected override object Convert(object sender, AppointmentItemEventArgs args) {
            args.Appointment.LabelId = 1;
            args.Appointment.Reminders.Clear();
            return args;
        }
    }
}
See Also