DXSchedulerPrintAdapter.EnableSmartSync Property
Gets or sets whether different controls in a report should synchronize their data iterations (the SmartSync Printing feature).
Namespace: DevExpress.Xpf.Scheduler.Reporting
Assembly: DevExpress.Xpf.Scheduler.v24.1.dll
NuGet Package: DevExpress.Wpf.Scheduler
Declaration
Property Value
Type | Description |
---|---|
Boolean | true to enable the SmartSync Printing feature; otherwise, false. |
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.
If several report controls are placed on the same scheduler report, the scheduler print adapter of this report can coordinate how controls iterate through data. A report control having the minimal period becomes the principal data control. It starts the iteration, and dependent controls are not modified on a page while the time value of the current iteration falls within their display periods. A dependent control jumps to the next period when the time displayed by the principal data control goes beyond the interval displayed by the dependent control.
The picture below illustrates a tri-fold report containing the DayViewTimeCells, FullWeek and HorizontalWeek controls on one page. The EnableSmartSync is turned on and the ISmartSyncOptions.GroupType property (an instance of the class implementing the ISmartSyncOptions interface is accessed via DXSchedulerPrintAdapter.SmartSyncOptions) is set to SchedulerGroupType.Resource.
The report is printed in the following order:
- first resource, first day of the report interval (DXSchedulerPrintAdapter.TimeInterval), a week containing this day, a month containing this day
- first resource, second day of the report interval, a week containing this day, a month containing this day
- (…)
- first resource, last day of the report interval, a week containing this day, a month containing this day
- second resource, first day of the report interval, a week containing this day, a month containing this day
- (…)
- last resource, last day of the report interval, a week containing this day, a month containing this day
Example
This example demonstrates how to enable the SmartSync feature for scheduler tri-fold reports (for example, the TrifoldResource.schrepx report that is, by default, placed in C:\Users\Public\Documents\DevExpress Demos 24.1\Components\Data\SchedulerReportTemplates\). Use the DXSchedulerPrintAdapter.EnableSmartSync
and DXSchedulerPrintAdapter.SmartSyncOptions properties.
<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="491" Width="691" >
<Grid>
<!-- ... -->
<dxsch:SchedulerControl x:Name="scheduler" >
<!-- ... -->
</dxsch:SchedulerControl>
<dxsch:DXSchedulerControlPrintAdapter x:Name="printAdapter"
SchedulerControl="{Binding ElementName=scheduler}"
EnableSmartSync="True">
<dxsch:DXSchedulerControlPrintAdapter.SmartSyncOptions>
<dxsch:SchedulerSmartSyncOptions GroupType="Resource"/>
</dxsch:DXSchedulerControlPrintAdapter.SmartSyncOptions>
</dxsch:DXSchedulerControlPrintAdapter>
</Grid>
</Window>