OptionsCustomization.AllowAppointmentConflicts Property

Gets or sets a value that specifies whether an end-user is allowed to share the schedule time between two or more appointments.

Namespace: DevExpress.Xpf.Scheduler

Assembly: DevExpress.Xpf.Scheduler.v21.1.dll

Declaration

public AppointmentConflictsMode AllowAppointmentConflicts { get; set; }

Property Value

Type Description
AppointmentConflictsMode

A AppointmentConflictsMode enumeration value specifying whether the time interval of two or more appointments can intersect or not, if these appointments belong to the same resource(s).

Available values:

Name Description
Allowed

Appointments conflicts are allowed. This means that appointment intervals can intersect for the same resource (or for at least for one of the resources to which they belong, if resources are shared).

Forbidden

Appointments conflicts are forbidden. This means that appointment intervals can’t intersect each other for the same resource (or for at least for one of the resources to which they belong, if resources are shared).

Custom

Whether the conflicts are resolved or not is determined manually in the corresponding event handler.

Property Paths

You can access this nested property as listed below:

Object Type Path to AllowAppointmentConflicts
SchedulerControl
.OptionsCustomization.AllowAppointmentConflicts

Remarks

Important

You are viewing documentation for the legacy WPF Scheduler control. If you’re starting a new project, we strongly recommend that you use a new control declared in the DevExpress.Xpf.Scheduling namespace. If you decide to upgrade an existing project in order to switch to the updated scheduler control, see the Migration Guidelines document.

By default, end-users can share the schedule time between two or more appointments. Use the AllowAppointmentConflicts property to control the availability of such functionality to end-users.

If this property is set to AppointmentConflictsMode.Allowed, the time interval of two or more appointments can intersect and sharing the schedule time between the appointments is allowed. Set the AllowAppointmentConflicts property to AppointmentConflictsMode.Forbidden to prevent scheduling (or rescheduling) of two or more appointments for the same time.

Note

If the AllowAppointmentConflicts property is set to AppointmentConflictsMode.Custom, then whether an end-user is allowed to share the schedule time between two or more appointments or not is decided in the SchedulerControl.AllowAppointmentConflicts event handler.

Example

This example demonstrates how to prevent end-users from having appointments within a certain time interval (from 2 PM to 3 PM). To implement end-user restrictions, handle the SchedulerControl.AllowAppointmentCreate event to prevent end-users from creating appointments within a certain time interval and the SchedulerControl.AllowAppointmentConflicts event to prevent an existing appointment from being dragged to the same time interval:

View Example

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduler"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <dxsch:SchedulerControl Name="schedulerControl1"
                                HorizontalAlignment="Stretch" VerticalAlignment="Stretch"                               
                                AllowAppointmentConflicts="schedulerControl1_AllowAppointmentConflicts" 
                                AllowAppointmentCreate="schedulerControl1_AllowAppointmentCreate">
            <dxsch:SchedulerControl.DayView>
                <dxsch:DayView DayCount="3" />
            </dxsch:SchedulerControl.DayView>
            <dxsch:SchedulerControl.OptionsCustomization>
                <dxsch:OptionsCustomization AllowAppointmentConflicts="Custom" AllowAppointmentCreate="Custom" />
            </dxsch:SchedulerControl.OptionsCustomization>
        </dxsch:SchedulerControl>
    </Grid>
</Window>
See Also