Skip to main content

syncfusion-wpf-hub-tile

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.

Datos de origen

Repositorio
syncfusion/wpf-ui-components-skills
Última actividad en el origen
6 de julio de 2026 a las 07:21
Idioma detectado de SKILL.md
inglés
Estrellas
5
Forks
2

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Explorador de archivos
6 archivos

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
syncfusion-wpf-hub-tile
description
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.
metadata
{"author":"Syncfusion Inc","version":"34.1.29"}
# 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:** ```xml 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) ```xml <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) ```xml <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 ```csharp 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 ```csharp // 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 |
Ver en GitHub