Timeline / TimelineItem

April 9, 2026 · View on GitHub

Displays a vertical sequence of events along a connecting axis line. Supports four layout modes, custom icons, and five severity types.

Basic usage

<Timeline>
    <TimelineItem Header="Project started"
                  Content="Initial commit pushed to repository."
                  Time="{x:Static sys:DateTime.Now}" />

    <TimelineItem Header="Beta release"
                  Content="First public beta available for testing."
                  Type="Success" />

    <TimelineItem Header="Critical bug found"
                  Content="Memory leak in the rendering pipeline."
                  Type="Error" />
</Timeline>

Timeline properties

PropertyTypeDefaultDescription
ModeTimelineDisplayModeLeftHow items are positioned relative to the axis
TimeFormatstring?"yyyy-MM-dd HH:mm:ss"Format string applied to each item's Time
IconMemberBindingBindingBase?Binding path for the icon when using ItemsSource
HeaderMemberBindingBindingBase?Binding path for the header
ContentMemberBindingBindingBase?Binding path for the content
TimeMemberBindingBindingBase?Binding path for the timestamp
IconTemplateIDataTemplate?Data template for the icon node
DescriptionTemplateIDataTemplate?Data template for the content area

TimelineDisplayMode values

ValueDescription
LeftContent on the right, axis on the left
RightContent on the left, axis on the right
CenterAxis in the center, time on the left, content on the right
AlternateItems alternate left/right of the axis

TimelineItem properties

PropertyTypeDefaultDescription
Headerobject?Title shown above the content
Contentobject?Body content of the event
TimeDateTimeTimestamp displayed next to the item
TimeFormatstring?inheritedOverride the format string for this item
TypeTimelineItemTypeDefaultVisual severity / style of the icon node
PositionTimelineItemPositionLeftOverrides the item's position (set automatically by Timeline.Mode)
Iconobject?Custom icon content for the axis node
IconTemplateIDataTemplate?Data template for the icon

TimelineItemType values

ValueDescription
DefaultNeutral dot
SuccessGreen checkmark
WarningYellow warning
ErrorRed error
InfoBlue info

Data-bound timeline

<Timeline ItemsSource="{Binding Events}"
          Mode="Alternate"
          HeaderMemberBinding="{Binding Title}"
          ContentMemberBinding="{Binding Description}"
          TimeMemberBinding="{Binding OccurredAt}"
          TimeFormat="MMM d, yyyy" />

Custom icon

<TimelineItem Header="Deployed">
    <TimelineItem.Icon>
        <PathIcon Data="{DynamicResource RocketRegular}"
                  Width="14" Height="14" />
    </TimelineItem.Icon>
</TimelineItem>

Center mode with timestamps

<Timeline Mode="Center" TimeFormat="HH:mm">
    <TimelineItem Header="Login"    Time="2024-01-15T09:00:00" />
    <TimelineItem Header="Purchase" Time="2024-01-15T09:14:32" Type="Success" />
    <TimelineItem Header="Logout"   Time="2024-01-15T09:45:00" />
</Timeline>