WorkdaysOptions.ExactWorkdays Property
Specifies strict workdays that don’t depend on the WorkdaysOptions.Holidays and WorkdaysOptions.Workdays properties settings.
Namespace: DevExpress.XtraCharts
Assembly: DevExpress.XtraCharts.v25.1.dll
NuGet Package: DevExpress.Charts
Declaration
[PersistenceMode(PersistenceMode.InnerProperty)]
public KnownDateCollection ExactWorkdays { get; }
Property Value
Type | Description |
---|---|
KnownDateCollection | A KnownDateCollection object, that stores the information about strict workdays. |
Property Paths
You can access this nested property as listed below:
Object Type | Path to ExactWorkdays |
---|---|
DateTimeScaleOptions |
|
Remarks
Apart from specifying the workdays within the week (via the WorkdaysOptions.Workdays property), you can define strict workdays (which have priority over the WorkdaysOptions.Holidays property setting), via the ExactWorkdays property.
For more information, refer to Data Aggregation.
Example
This example demonstates how to exclude non-working days (weekdays and holidays) from an axis range, with the DateTimeScaleOptions.WorkdaysOnly and DateTimeScaleOptions.WorkdaysOptions properties.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/winforms-chart-exclude-weekends-and-holidays-from-the-axis-range
using System;
using System.Windows.Forms;
using DevExpress.XtraCharts;
// ...
DateTimeScaleOptions dateTimeScaleOptions = ((XYDiagram)chartControl1.Diagram).AxisX.DateTimeScaleOptions;
// Enables workday options.
dateTimeScaleOptions.WorkdaysOnly = true;
// Specifies custom work days.
// In this example, Sunday is a work day and Saturday is a day off.
dateTimeScaleOptions.WorkdaysOptions.Workdays = Weekday.Sunday | Weekday.Monday | Weekday.Tuesday |
Weekday.Wednesday | Weekday.Thursday | Weekday.Friday;
// Specifies custom holidays.
// In this example, March 8th (Monday) is an additional holiday.
dateTimeScaleOptions.WorkdaysOptions.Holidays.Add(
new KnownDate("Custom Holiday", new DateTime(2021, 3, 8, 0, 0, 0, 0)));
// Specifies work days, which have priority over specified holidays.
// In this example, March 6th (Saturday) is an additional work day.
dateTimeScaleOptions.WorkdaysOptions.ExactWorkdays.Add(
new KnownDate("Community Work Day", new DateTime(2021, 3, 6, 0, 0, 0, 0)));