Breaking Change BC4919
Visible to All Users

The scheduler appearance style has been changed

In v19.1, we have introduced the new scheduler appearance style - Outlook2019,  which is used by default. The Scheduler control that uses the Outlook2019 style colorizes its headers and navigation buttons. Appointments which label is set to None are now colorized with the resource color. DevExpress themes that fully support the Outlook 2019 style are listed below.

- Office2019 (White, DarkGray, Colorful, Black)
- VisualStudio2017 (Light, Dark, Blue)
- Office2016SE (White, DarkGray, Colorful, Black)
- Metropolis (Light, Dark)
- DeepBlue

In Classic mode, cells are always colorized. Headers, navigation buttons are not colorized, and appointments are not colorized with the resource color. To enable the Classic mode, set the DevExpress.Xpf.Core.CompatibilitySettings.SchedulerAppearanceStyle static property to SchedulerAppearanceStyle.Classic.

The following changes have been implemented:

  1. The SchedulerControl.ResourceBrushSchemas property is now obsolete. It is recommended to use the SchedulerControl.ResourceColors property instead.
    ResourceBrushSchemas are used for cells colorization. If you already customized ResourceBrushSchemas, it will still work in themes listed at the beginning of this document. If the Classic mode is enabled, it will work in all themes.
  2. The LabelColors palette now supports the Transparent color. Appointments that have the transparent label are colorized with the resource color.
  3. The default date header format has been changed. You can customize it using the following properties:

DayViewBase.DateHeaderUseUpperCase
DayViewBase.DateHeaderStringFormat
DayViewBase.DateHeaderStringFormats
MonthView.DateHeaderUseUpperCase
MonthView.DateHeaderStringFormat
MonthView.DateHeaderStringFormats

The scheduler resource colorization mechanism is described below:
- The ResourceItem.Color property defines the resource color and has the highest priority. If you set this property (either directly or by mapping), the SchedulerControl.ResourceBrushSchemas and SchedulerControl.ResourceColors settings are ignored.
- If you do not use the ResourceItem.Color property, then Scheduler takes a resource item color from the SchedulerControl.ResourceColors  property.
You can set SchedulerControl.ResourceColors directly for all themes:

XAML
<dxsch:SchedulerControl.ResourceColors> <Color>Red</Color> <Color>Green</Color> </dxsch:SchedulerControl.ResourceColors>

Alternatively, you can override the ResourceColors palette for a certain theme. To do this, use the SchedulerThemeKeys.ResourceColors and SchedulerThemeKeys.ResourceColors_Classic resource keys. The SchedulerThemeKeys.ResourceColors_Classic resource key is only used in the Classic scheduler appearance style:

XAML
<dxsch:ColorCollection x:Key="{dxscht:SchedulerThemeKey ResourceKey=ResourceColors, ThemeName=Office2019Colorful}"> <Color>Red</Color> <Color>Green</Color> </dxsch:ColorCollection>

- If you already customized ResourceBrushSchemas, it will still work in themes listed at the beginning of this document. If the Classic mode is enabled, it will work in all themes.

The scheduler appointments colorization mechanism is described below:
- The AppointmentLabelItem.Color property defines the appointment color and has the highest priority. If you set this property (either directly or by mapping), the SchedulerControl.LabelColors setting is ignored.
- If you do not use the AppointmentLabelItem.Color property, the Scheduler control takes a label color from the  SchedulerControl.LabelColors  palette.
You can set SchedulerControl.LabelColors directly for all themes:

XAML
<dxsch:SchedulerControl.LabelColors> <Color>Transparent</Color> <Color>Red</Color> </dxsch:SchedulerControl.LabelColors>

Alternatively, you can override the LabelColors palette for a certain theme. To do this, use the SchedulerThemeKeys.LabelColors and SchedulerThemeKeys.LabelColors_Classic resource keys. The SchedulerThemeKeys.LabelColors_Classic resource key is only used in the Classic scheduler appearance style:

XAML
<dxsch:ColorCollection x:Key="{dxscht:SchedulerThemeKey ResourceKey=LabelColors, ThemeName=Office2019Colorful}"> <Color>Transparent</Color> <Color>Red</Color> </dxsch:ColorCollection>

- If the AppointmentLabelItem.Color property is set to Colors.Transparent, the appointment color is taken from the assigned resource item. If appointment has several assigned resources and SchedulerControl.GroupType is None, the appointment has the default theme background.

Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.