Skip to main content

TimelineView.TimeScaleTemplate Property

Gets or sets a template that describes time scales for the Timeline View. This is a dependency property.

Namespace: DevExpress.Xpf.Scheduling

Assembly: DevExpress.Xpf.Scheduling.v23.2.dll

NuGet Package: DevExpress.Wpf.Scheduling

Declaration

public DataTemplate TimeScaleTemplate { get; set; }

Property Value

Type Description
DataTemplate

A DataTemplate object that is the time scale template.

Remarks

Use the TimelineView.TimeScalesSource property to bind the Timeline View to a collection of objects that contain time scale settings.

The Timeline View uses time scale templates to generate time scales. To choose the required template based on the time scale type, use the template selector assigned to the TimelineView.TimeScaleTemplateSelector property. If all time scales can be described using a single template, you have no need to create a time scale template selector. Instead, assign this template to the view’s TimeScaleTemplate property.

Example

The following example demonstrates how to specify time scales for the Timeline View using the MVVM architectural pattern.

Use the TimelineView.TimeScalesSource property to bind the view to a collection of objects containing time scale settings described in the ViewModel. The Timeline View generates time scales based on templates. Create multiple templates, one template for each time scale type. In this example, there are three time scale templates: WorkDayScaleTemplate, WorkHourScaleTemplate, and FixedTimeScaleTemplate.

To choose the required template based on the time scale type, create a template selector and assign it to the TimelineView.TimeScaleTemplateSelector property.

TimeScales

View Example

Imports System.Windows
Imports System.Windows.Controls
Imports System

Namespace WpfSchedulerTimelineScalesTemplate
    Public Class TimeScaleTemplateSelector
        Inherits DataTemplateSelector

        Public Property WorkDayScaleTemplate() As DataTemplate
        Public Property WorkHourScaleTemplate() As DataTemplate
        Public Property FixedTimeScaleTemplate() As DataTemplate
        Public Overrides Function SelectTemplate(ByVal item As Object, ByVal container As DependencyObject) As DataTemplate
            Dim timeScale As TimeScaleViewModel = TryCast(item, TimeScaleViewModel)
            Select Case timeScale.Type
                Case ScaleType.WorkDay
                    Return WorkDayScaleTemplate
                Case ScaleType.WorkHour
                    Return WorkHourScaleTemplate
                Case ScaleType.FixedTime
                    Return FixedTimeScaleTemplate
                Case Else
                    Throw New NotImplementedException()
            End Select
        End Function
    End Class
End Namespace
See Also