TimeRulerCellControl Class

Visualizes a cell in the TimeRuler element of the Day View, WorkWeek View, and Week View views.

Namespace: DevExpress.Xpf.Scheduling.Visual

Assembly: DevExpress.Xpf.Scheduling.v20.1.dll

Declaration

public class TimeRulerCellControl :
    ChromeBase
Public Class TimeRulerCellControl
    Inherits ChromeBase

Remarks

To display its content, the TimeRulerCellControl element uses the TimeRulerCellPresenter, TimeRulerCellHourPresenter and the TimeRulerCellMinutePresenter instances.

The TimeRulerCellControl.Content property provides access to a View Model passed to the control.

TIP

To specify formats to display hour and minutes in the time ruler, set the TimeRulerCellControl.HourStringFormat and TimeRulerCellControl.MinuteStringFormat properties.

TIP

A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=T610483.

Examples

The following example demonstrates how to add multiple time rulers to the scheduler's Day View using the MVVM architectural pattern.

Use the DayViewBase.TimeRulersSource property to bind the view to a collection of objects containing time ruler settings described in the ViewModel. The DayViewBase.TimeRulerTemplate property specifies a data template based on which time rulers are generated.

Create a custom style for the TimeRulerCellControl to specify format strings for displaying time in the time rulers' time scale.

<dx:ThemedWindow x:Class="WpfSchedulerTimeRulers.MainWindow" mc:Ignorable="d" Title="Time Rulers" Height="500" Width="800" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:local="clr-namespace:WpfSchedulerTimeRulers"
    xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
    xmlns:dxmvvm="http://schemas.devexpress.com/winfx/2008/xaml/mvvm"
    xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduling"
    xmlns:dxschv="http://schemas.devexpress.com/winfx/2008/xaml/scheduling/visual"
    DataContext="{dxmvvm:ViewModelSource local:MainViewModel}">

    <dx:ThemedWindow.Resources>
        <DataTemplate x:Key="TimeRulerGeneratorTemplate">
            <ContentControl>
                <dxsch:TimeRuler Caption="{Binding Caption}" ShowMinutes="{Binding ShowMinutes}" TimeZone="{Binding TimeZone}" AlwaysShowTimeDesignator="{Binding AlwaysShowTimeDesignator}"/>
            </ContentControl>
        </DataTemplate>

        <Style TargetType="{x:Type dxschv:TimeRulerCellControl}">
            <Setter Property="HourStringFormat" Value="{}{0:HH}"/>
            <Setter Property="MinuteStringFormat" Value="{}{0:mm}"/>
        </Style>
    </dx:ThemedWindow.Resources>

    <Grid>
        <dxsch:SchedulerControl x:Name="scheduler">
            <dxsch:DayView x:Name="dayView" ShowWorkTimeOnly="True" TimeScale="00:30:00" TimeRulersSource="{Binding TimeRulers}" TimeRulerTemplate="{StaticResource TimeRulerGeneratorTemplate}"/>
        </dxsch:SchedulerControl>
    </Grid>
</dx:ThemedWindow>

Inheritance

Object
DispatcherObject
DependencyObject
Visual
UIElement
FrameworkElement
ContentPresenter
DevExpress.Xpf.Core.Native.Chrome
DevExpress.Xpf.Scheduling.Visual.ChromeBase
TimeRulerCellControl
See Also