MCPInstall

syncfusion-winui-badge

Guide implementation of the Syncfusion WinUI Badge control (SfBadge) for displaying notification badges and status indicators. Use this skill when working with badge notifications, unread count badges, BadgeContainer, or notification overlays in WinUI applications. Covers shapes, colors, positioning, alignment, animations, and customization patterns.

Installs
51
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/syncfusion/winui-ui-components-skills --skill syncfusion-winui-badge
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads syncfusion-winui-badge automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Implementing Badges in WinUI

The Syncfusion WinUI Badge control (SfBadge) displays notifications, counts, or status indicators overlaid on other UI elements. Use badges to show unread message counts, notification indicators, status changes, or any numeric/text overlay on buttons, icons, or controls.

When to Use This Skill

Use this skill when you need to:

  • Display notification counts on buttons, icons, or UI elements
  • Show unread message indicators in messaging or email interfaces
  • Add status badges to user avatars or profile pictures
  • Create notification overlays on navigation items
  • Implement count indicators for shopping carts or lists
  • Show warning, error, or success states with badges
  • Position badges at specific locations on controls
  • Customize badge appearance (colors, shapes, animations)
  • Work with the SfBadge or BadgeContainer components

Component Overview

Key Capabilities:

  • Multiple shapes (Oval, Rectangle, Ellipse, Custom)
  • Predefined color states (Accent, Success, Warning, Error, Information)
  • Flexible positioning and alignment
  • Custom content and formatting
  • Animation support (Scale, Opacity)
  • Works with or without BadgeContainer
  • Complete customization (colors, fonts, strokes, rotation)

Basic Usage Pattern:

<notification:BadgeContainer>
    <notification:BadgeContainer.Content>
        <Button Content="Inbox"/>
    </notification:BadgeContainer.Content>
    <notification:BadgeContainer.Badge>
        <notification:SfBadge Content="10" Fill="Success"/>
    </notification:BadgeContainer.Badge>
</notification:BadgeContainer>

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

When you need to:

  • Install and set up the Badge component
  • Create your first Badge implementation
  • Add Badge to buttons or other controls
  • Understand BadgeContainer usage
  • Set basic badge content and properties
  • Learn the component structure

Shapes and Fill Styles

📄 Read: references/shapes-and-fills.md

When you need to:

  • Change badge shape (Oval, Rectangle, Ellipse)
  • Use predefined fill colors (Success, Warning, Error, etc.)
  • Understand badge color states
  • Create custom shapes with CustomShape property
  • Choose appropriate visual styles for different badge types

Alignment and Positioning

📄 Read: references/alignment-positioning.md

When you need to:

  • Align badge horizontally or vertically
  • Position badge inside, outside, or centered on edges
  • Place badge at custom positions (0-1 range)
  • Use anchor positioning
  • Adjust badge content alignment
  • Control padding and spacing
  • Handle auto re-positioning

Customization Options

📄 Read: references/customization.md

When you need to:

  • Set custom background and foreground colors
  • Create completely custom badge shapes
  • Customize badge UI with ContentTemplate
  • Add strokes and borders
  • Change text formatting (font, size, style)
  • Rotate badges
  • Adjust opacity
  • Control badge size
  • Hide or show badges

Features and Configuration

📄 Read: references/features.md

When you need to:

  • Add animations (Scale or Opacity)
  • Format badge content with converters
  • Use Badge without BadgeContainer
  • Implement badges in ListView or data templates
  • Apply advanced content formatting
  • Handle dynamic badge scenarios

Quick Start

1. Install NuGet Package

Install-Package Syncfusion.Notifications.WinUI

2. Import Namespace

xmlns:notification="using:Syncfusion.UI.Xaml.Notifications"

3. Basic Badge Implementation

<notification:BadgeContainer>
    <notification:BadgeContainer.Content>
        <Button Content="Notifications" Width="120" Height="40"/>
    </notification:BadgeContainer.Content>
    <notification:BadgeContainer.Badge>
        <notification:SfBadge Content="5" Fill="Error"/>
    </notification:BadgeContainer.Badge>
</notification:BadgeContainer>

Common Patterns

Pattern 1: Unread Message Count

<notification:BadgeContainer>
    <notification:BadgeContainer.Content>
        <Button Content="Messages" FontSize="16"/>
    </notification:BadgeContainer.Content>
    <notification:BadgeContainer.Badge>
        <notification:SfBadge Content="{x:Bind UnreadCount, Mode=OneWay}"
                             Fill="Error"
                             Shape="Ellipse"/>
    </notification:BadgeContainer.Badge>
</notification:BadgeContainer>

Pattern 2: Status Indicator

<notification:BadgeContainer>
    <notification:BadgeContainer.Content>
        <PersonPicture Width="60" Height="60" ProfilePicture="/Assets/user.png"/>
    </notification:BadgeContainer.Content>
    <notification:BadgeContainer.Badge>
        <notification:SfBadge Shape="None"
                             HorizontalPosition="0.85"
                             VerticalPosition="0.85">
            <Ellipse Width="16" Height="16" Fill="LimeGreen"/>
        </notification:SfBadge>
    </notification:BadgeContainer.Badge>
</notification:BadgeContainer>

Pattern 3: Success/Warning States

<!-- Success Badge -->
<notification:SfBadge Content="Verified" 
                     Fill="Success" 
                     Shape="Rectangle"/>

<!-- Warning Badge -->
<notification:SfBadge Content="!" 
                     Fill="Warning" 
                     Shape="Ellipse"/>

<!-- Error Badge -->
<notification:SfBadge Content="Error" 
                     Fill="Error" 
                     Shape="Oval"/>

Pattern 4: Custom Formatted Count

// Converter to format large numbers
public class CountFormatConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        if (int.TryParse(value?.ToString(), out int count))
        {
            if (count <= 99) return count.ToString();
            if (count <= 999) return "99+";
            if (count < 99999) return (count / 1000).ToString("0.#") + "K";
            return (count / 1000000).ToString("0.#") + "M";
        }
        return value;
    }
    
    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        throw new NotImplementedException();
    }
}
<Page.Resources>
    <local:CountFormatConverter x:Key="countFormatter"/>
</Page.Resources>

<notification:SfBadge Content="{x:Bind Count, Mode=OneWay, Converter={StaticResource countFormatter}}"
                     Background="Red"
                     Foreground="White"/>

Pattern 5: Badge in ListView

<ListView ItemsSource="{x:Bind MailItems}">
    <ListView.ItemTemplate>
        <DataTemplate x:DataType="local:MailItem">
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"/>
                    <ColumnDefinition Width="Auto"/>
                </Grid.ColumnDefinitions>
                
                <TextBlock Text="{x:Bind FolderName}" 
                          VerticalAlignment="Center"/>
                
                <notification:SfBadge Grid.Column="1"
                                     Content="{x:Bind UnreadCount}"
                                     Fill="Warning"
                                     Shape="Oval"
                                     Visibility="{x:Bind HasUnread}"/>
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

Key Properties

Content and Display

  • Content - Text or number to display in badge
  • ContentTemplate - Custom template for badge content
  • Visibility - Show or hide badge (Visible/Collapsed)

Shape and Style

  • Shape - Badge shape: Oval, Rectangle, Ellipse, None, Custom
  • Fill - Predefined color: Accent, Success, Warning, Error, Information, Alt, Default
  • CustomShape - Geometry for custom badge shapes
  • Background/Foreground - Custom colors

Positioning (with BadgeContainer)

  • HorizontalAlignment - Left, Center, Right (default: Right)
  • VerticalAlignment - Top, Center, Bottom (default: Top)
  • HorizontalAnchor - Inside, Center, Outside (default: Center)
  • VerticalAnchor - Inside, Center, Outside (default: Center)
  • HorizontalPosition - 0 to 1 for custom positioning (default: 1)
  • VerticalPosition - 0 to 1 for custom positioning (default: 0)

Appearance

  • Width/Height - Badge dimensions (default: 40x30)
  • Padding - Internal content spacing
  • FontSize/FontFamily/FontStyle - Text formatting
  • Stroke/StrokeThickness - Border styling
  • Rotation - Rotation angle in degrees
  • Opacity - Transparency (0-1)

Animation

  • AnimationType - None, Scale, Opacity (animates on content change)

Common Use Cases

  1. Email/Messaging Apps - Unread message counts on inbox buttons
  2. E-commerce - Item counts in shopping cart badges
  3. Social Media - Notification counts on notification icons
  4. Status Indicators - Online/offline/away status on avatars
  5. Navigation Menus - New item indicators on menu items
  6. Dashboard Widgets - Alert counts on dashboard cards
  7. Forms - Error or warning indicators on form fields
  8. Lists - Item counts or status on list items

When to Use BadgeContainer vs Standalone

Use BadgeContainer when:

  • Badge needs to overlay another control (Button, Image, Icon)
  • You need automatic positioning relative to content
  • You want badge to follow content when resizing

Use standalone Badge when:

  • Badge is part of a layout (Grid, StackPanel)
  • You're handling positioning with layout containers
  • Using badges in ItemTemplates or DataTemplates
  • You need manual position control

Tips and Best Practices

  1. Choose appropriate Fill colors - Use Success (green) for positive states, Warning (orange) for alerts, Error (red) for critical notifications
  2. Keep content concise - Single digit, short text, or icon works best
  3. Use Ellipse shape for numbers - Oval or Ellipse shapes work well for numeric counts
  4. Format large numbers - Display "99+" for counts over 99 to avoid badge becoming too wide
  5. Consider accessibility - Ensure sufficient color contrast between background and foreground
  6. Animate content changes - Use Scale or Opacity animation to draw attention to updates
  7. Hide when zero - Set Visibility to Collapsed when count is zero or null
  8. Test different sizes - Verify badge appearance on various control sizes
  9. Use consistent positioning - Keep badge position consistent across similar controls in your app

Troubleshooting Quick Reference

IssueSolution
Badge not visibleCheck Visibility property, ensure Content is set, verify parent container size
Position incorrectReview HorizontalAnchor/VerticalAnchor values, check alignment properties
Content cut offIncrease Width/Height or adjust Padding
Color not applyingBackground overrides Fill - use one or the other
Animation not workingAnimation only triggers on Content change, verify AnimationType is set
Badge not overlappingEnsure using BadgeContainer, not standalone Badge

For detailed implementation guidance, refer to the specific documentation files listed in the Navigation Guide above.

FAQ

What does the syncfusion-winui-badge skill do?

Guide implementation of the Syncfusion WinUI Badge control (SfBadge) for displaying notification badges and status indicators. Use this skill when working with badge notifications, unread count badges, BadgeContainer, or notification overlays in WinUI applications. Covers shapes, colors, positioning, alignment, animations, and customization patterns.

How do I install syncfusion-winui-badge?

Run npx skills add https://github.com/syncfusion/winui-ui-components-skills --skill syncfusion-winui-badge in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-winui-badge/ (personal) or .claude/skills/syncfusion-winui-badge/ (project).

Which AI agents can use syncfusion-winui-badge?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is syncfusion-winui-badge safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains syncfusion-winui-badge?

It is published by syncfusion in syncfusion/winui-ui-components-skills. It has 51 recorded installs.

More from syncfusion/winui-ui-components-skills

View all →

syncfusion-winui-getting-started

syncfusion/winui-ui-components-skills

Comprehensive guide for setting up Syncfusion WinUI components, including license registration, NuGet package installation, system requirements verification, and troubleshooting. Use this skill when users need help with Syncfusion licensing, installation, WinUI component configuration, theme setup, or resolving installation errors.

syncfusion-winui-treeview

syncfusion/winui-ui-components-skills

Comprehensive guide for implementing Syncfusion WinUI TreeView (SfTreeView) control in desktop applications. Use this skill when working with hierarchical data display, tree structures, or node-based navigation. Covers TreeView implementation for file explorers, organization charts, category browsers, and expandable/collapsible data visualization in WinUI applications.

syncfusion-winui-datagrid

syncfusion/winui-ui-components-skills

Guide for implementing Syncfusion WinUI DataGrid (SfDataGrid) for tabular data display in desktop applications. Use this skill when working with data grids, sorting, filtering, grouping, or CRUD operations. Covers data binding, column configuration, master-details views, Excel export, and performance optimization including data virtualization and custom templates.

syncfusion-winui-polar-charts

syncfusion/winui-ui-components-skills

Open the skill to read its SKILL.md instructions.

syncfusion-winui-numberbox

syncfusion/winui-ui-components-skills

Learn to implement Syncfusion WinUI NumberBox (SfNumberBox) control for numeric input with validation, custom formatting, and value restrictions. Use this skill when you need numeric input fields with currency, percentage, or decimal formatting in WinUI applications.

syncfusion-winui-treegrid

syncfusion/winui-ui-components-skills

Guide for implementing Syncfusion WinUI TreeGrid (SfTreeGrid) components for displaying hierarchical or self-relational data. Use this skill when working with tree-structured grids, parent-child data relationships, or expandable grid rows. Covers TreeGrid features for organizational charts, file system displays, and multi-level data representation in WinUI applications.

Popular frontend & design skills

View category →

setup-matt-pocock-skills

mattpocock/skills

Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.

Frontend & Design1.1M installs

frontend-design

anthropics/skills

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

OfficialFrontend & Design1M installs

hyperframes-animation

heygen-com/hyperframes

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.

prototype

mattpocock/skills

Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.

Frontend & Design999.2K installs

hyperframes-core

heygen-com/hyperframes

The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.

Frontend & Design930.5K installs

vercel-react-best-practices

vercel-labs/agent-skills

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

OfficialFrontend & Design843.1K installs