syncfusion/wpf-ui-components-skills

syncfusion-wpf-hub-tile

Implement Syncfusion WPF Tile Controls (SfHubTile and SfPulsingTile) for animated tile UIs.

First seen Mar 26, 2026

Installation

$ npx skills add syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-hub-tile

Summary

  • Implement Syncfusion WPF Tile Controls (SfHubTile and SfPulsingTile) for animated tile UIs.
  • Use this when building Windows-style live tiles, tile transitions, tile animations, or grouped tile layouts in WPF.
  • Covers Slide/Fade transitions, pulsing/zooming content, tile grouping, freeze/unfreeze animations, and desktop-style live tile experiences.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from syncfusion/wpf-ui-components-skills · top by installs.

npx skills add syncfusion/wpf-ui-components-skills

Browse all from syncfusion/wpf-ui-components-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 5
Default branch master
Open issues 0
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version34.1.29
More metadata
author
Syncfusion Inc
version
34.1.29

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 7,431 B
  • docs SUMMARY.md 378 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 120 installs

SKILL.md

Implementing WPF Tile Controls

Guide for implementing Syncfusion® WPF Tile Controls — SfHubTile and SfPulsingTile — which create Windows Desktop-style live tile UIs with animated transitions, content cycling, grouping, and freeze support.

When to Use This Skill

Use this skill when you need to:

  • Create live tile UIs similar to Windows Desktop or Windows Phone start screens
  • Implement SfHubTile — tiles that cycle between primary and secondary content with Slide/Fade transitions
  • Implement SfPulsingTile — tiles that zoom/pan content continuously (music/video tile style)
  • Configure tile header, title, and image display
  • Set up transition animations and intervals
  • Group tiles and freeze/unfreeze animations programmatically or via HubTileService
  • Customize appearance with styles, templates, and themes

Component Overview

Control Style Key Capability
SfHubTile Live tile Cycles between primary + secondary content via Slide/Fade transitions
SfPulsingTile Music/video tile Continuously zooms and pans its content using PulseScale, RadiusX, RadiusY

Both inherit from HubTileBase and share: Header, Title, ImageSource, IsFrozen, GroupName, ScaleDepth, TilePressDuration, Click, Command.

Required assemblies:

  • Syncfusion.SfHubTile.WPF
  • Syncfusion.SfShared.WPF

XAML namespace:

xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
xmlns:shared="clr-namespace:Syncfusion.Windows.Controls;assembly=Syncfusion.SfShared.Wpf"

Documentation and Navigation Guide

Getting Started

📄 Read: [references/getting-started.md](references/getting-started.md)

  • Assembly references and NuGet setup
  • Adding tiles via Designer, XAML, and C#
  • Setting Header, Title, and ImageSource
  • Basic click events and MVVM command binding
  • Applying built-in themes

Hub Tile Features

📄 Read: [references/hub-tile-features.md](references/hub-tile-features.md)

  • Secondary content (image, text, or control)
  • Slide and Fade transitions with HubTileTransitions
  • Transition interval and HubTileTransitionCompleted event
  • Press animation (ScaleDepth, TilePressDuration)
  • MVVM command binding

Pulsing Tile Features

📄 Read: [references/pulsing-tile-features.md](references/pulsing-tile-features.md)

  • Scaling animation (PulseScale, PulseDuration)
  • Horizontal/vertical translation (RadiusX, RadiusY, TranslateDuration)
  • Press animation (ScaleDepth, TilePressDuration)
  • OverrideDefaultStates note
  • MVVM command binding

Grouping & Freeze/Unfreeze

📄 Read: [references/grouping-and-freeze.md](references/grouping-and-freeze.md)

  • GroupName property for tile grouping
  • Data binding grouping with ListView + ItemTemplate (MVVM)
  • IsFrozen property to freeze/unfreeze a single tile
  • HubTileService.Freeze / UnFreeze by instance or group name
  • System.Windows.Interactivity dependency notes

Appearance & Themes

📄 Read: [references/appearance-and-themes.md](references/appearance-and-themes.md)

  • HeaderStyle and HeaderTemplate customization
  • TitleStyle customization
  • SecondaryContent and SecondaryContentTemplate (HubTile)
  • Applying built-in themes via SfSkinManager
  • Creating custom themes with ThemeStudio

Quick Start

SfHubTile (live tile with transitions)

<Window xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
        xmlns:shared="clr-namespace:Syncfusion.Windows.Controls;assembly=Syncfusion.SfShared.Wpf">
  <Grid>
    <syncfusion:SfHubTile Header="Mail"
                          Title="You have 5 new messages"
                          ImageSource="/Assets/mail.png"
                          Foreground="White"
                          Interval="00:00:03">
      <syncfusion:SfHubTile.HubTileTransitions>
        <shared:SlideTransition/>
      </syncfusion:SfHubTile.HubTileTransitions>
      <syncfusion:SfHubTile.SecondaryContent>
        <Image Source="/Assets/mail-preview.png" Stretch="UniformToFill" Margin="-1"/>
      </syncfusion:SfHubTile.SecondaryContent>
    </syncfusion:SfHubTile>
  </Grid>
</Window>

SfPulsingTile (zoom/pan animation)

<syncfusion:SfPulsingTile Header="Music"
                           Title="Now Playing - Song Name"
                           ImageSource="/Assets/album.jpg"
                           Foreground="White"
                           PulseScale="2"
                           PulseDuration="00:00:03"
                           RadiusX="50"
                           RadiusY="50">
  <Image Source="/Assets/album.jpg" Stretch="UniformToFill"/>
</syncfusion:SfPulsingTile>

C# code-behind

using Syncfusion.Windows.Controls.Notification;

SfHubTile hubTile = new SfHubTile();
hubTile.Header = "Mail";
hubTile.Title = "You have 5 new messages";
hubTile.Foreground = Brushes.White;
hubTile.ImageSource = new BitmapImage(new Uri(@"/Assets/mail.png", UriKind.RelativeOrAbsolute));
hubTile.HubTileTransitions.Add(new SlideTransition());
hubTile.Interval = TimeSpan.FromSeconds(3.0);
grid.Children.Add(hubTile);

Common Patterns

Choose the right tile type

  • User wants live tile that cycles content → use SfHubTile with SecondaryContent + transitions
  • User wants continuously animated background (music/video style) → use SfPulsingTile with PulseScale + RadiusX/RadiusY
  • User wants both → each is independent; can mix in same layout

Freeze tile on demand

// Freeze single tile
hubTile.IsFrozen = true;

// Freeze entire group
HubTileService.Freeze("GroupName");

// Unfreeze entire group
HubTileService.UnFreeze("GroupName");

MVVM: bind tiles from a collection

Bind an ObservableCollection<Model> to a ListView and use ItemTemplate with SfHubTile. Each model exposes Header, ImageSource, and Interval properties. See references/grouping-and-freeze.md for the full MVVM example.

Key Properties

Property Control Purpose
Header Both Label displayed at tile bottom
Title Both Notification text at tile top
ImageSource Both Primary image path
Foreground Both Text color (set to White for dark tiles)
IsFrozen Both Stop/start animation
GroupName Both Group tiles for bulk freeze/unfreeze
Interval SfHubTile Time between transitions
SecondaryContent SfHubTile Content shown during transition
HubTileTransitions SfHubTile Transition effects (Slide, Fade)
PulseScale SfPulsingTile Zoom magnitude
PulseDuration SfPulsingTile Duration of one zoom cycle
RadiusX / RadiusY SfPulsingTile Translation range on X/Y axes
TranslateDuration SfPulsingTile Duration of one translation cycle
ScaleDepth Both Press animation zoom depth
TilePressDuration Both Press animation duration