syncfusion-maui-carousel

$npx mdskill add syncfusion/maui-ui-components-skills/syncfusion-maui-carousel

Implement and customize Syncfusion .NET MAUI Carousel for content navigation.

  • Solves creating interactive carousels for image galleries or product showcases.
  • Depends on Syncfusion .NET MAUI SfCarousel control and its NuGet package.
  • Decides based on user requirements for view mode, data, and event handling.
  • Delivers configured carousel with animations, virtualization, and swipe events.

SKILL.md

.github/skills/syncfusion-maui-carouselView on GitHub ↗
---
name: syncfusion-maui-carousel
description: Implements Syncfusion .NET MAUI Carousel (SfCarousel) for navigating through image data or content collections. Use when implementing carousel controls, populating carousel items, or configuring view modes (linear/default). Covers animations, load more functionality, UI virtualization, transformations, and swipe events.
metadata:
  author: "Syncfusion Inc"
  version: "34.1.29"
---

# Implementing .NET MAUI Carousel

A comprehensive skill for implementing and customizing the Syncfusion .NET MAUI Carousel (SfCarousel) control. The carousel allows users to navigate through image data or content in an interactive way with various customization options for item arrangements.

## When to Use This Skill

Use this skill when users need to:
- Implement a carousel/slideshow component for .NET MAUI applications
- Navigate through collections of images, cards, or custom content
- Create interactive image galleries or product showcases
- Display content with linear or default (3D) view arrangements
- Implement swipe gestures for content navigation
- Add load more functionality for dynamic content loading
- Optimize performance with UI virtualization for large datasets
- Customize carousel animations and transitions
- Handle carousel selection and swipe events

## Component Overview

The **SfCarousel** control provides:
- **Multiple View Modes**: Linear arrangement or Default (3D perspective) layout
- **Flexible Data Population**: Through data binding or direct item creation
- **Animation Control**: Customizable transition duration and effects
- **Load More Support**: Dynamically load additional items on demand
- **UI Virtualization**: Performance optimization for large item collections
- **Rich Events**: Selection changed, swipe started/ended, swiping events
- **Customization**: Item templates, rotation angles, spacing, transformations

## Documentation and Navigation Guide

### Getting Started
📄 **Read:** [references/getting-started.md](references/getting-started.md)
- Installation and NuGet package setup
- Handler registration in MauiProgram.cs
- Basic carousel implementation with minimal code
- Adding carousel items (through binding or direct)
- Setting item dimensions (ItemHeight, ItemWidth)
- Configuring SelectedIndex to show desired item

### Populating Data
📄 **Read:** [references/populating-data.md](references/populating-data.md)
- Data binding with ItemsSource and ItemTemplate
- Creating models and ViewModels for carousel data
- Custom DataTemplate for carousel items
- Using SfCarouselItem with ItemContent property
- Using ImageName property for simple image carousels
- ObservableCollection for dynamic data

### View Modes and Layout
📄 **Read:** [references/view-modes.md](references/view-modes.md)
- Linear arrangement (ViewMode.Linear) for stacked layout
- Default arrangement (ViewMode.Default) for 3D perspective
- Offset property for spacing between unselected items
- Rotation angle for visual effects
- ItemSpacing configuration

### Animation
📄 **Read:** [references/animation.md](references/animation.md)
- Duration property for transition timing
- Controlling animation speed (milliseconds)
- Smooth vs fast transitions
- Default animation behavior (600ms)

### Advanced Features
📄 **Read:** [references/advanced-features.md](references/advanced-features.md)
- Load More functionality (AllowLoadMore, LoadMoreItemsCount)
- Customizing LoadMoreView appearance
- UI Virtualization (EnableVirtualization) for performance
- Transformation effects (rotation, scale)
- Performance optimization techniques

### Swipe Events
📄 **Read:** [references/swipe-events.md](references/swipe-events.md)
- SwipeStarted event handling
- SwipeEnded event for post-swipe actions
- Swiping event for during-swipe feedback
- Custom swipe behavior implementation
- Event argument properties

### How-To
📄 **Read:** [references/howto.md](references/howto.md)
- Performing operations during item changes
- SelectionChanged event usage
- Best practices and tips

More from syncfusion/maui-ui-components-skills

SkillDescription
syncfusion-maui-accordionImplements Syncfusion .NET MAUI Accordion (SfAccordion) - a vertically collapsible panel with stacked headers for expanding/collapsing content. Use when working with accordions, collapsible panels, expandable lists, employee lists with details, or FAQ sections in .NET MAUI applications. Covers AccordionItem configuration, expand modes, and grouped content display.
syncfusion-maui-ai-assistviewImplements Syncfusion .NET MAUI AI AssistView (SfAIAssistView) for AI-powered interactive chat interfaces. Use when working with AI chat interfaces, AI AssistView, SfAIAssistView, conversational UI, or chat with AI responses. Covers integrating AI services, creating chat UIs, implementing conversation flows, managing AI requests/responses, and displaying AI suggestions.
syncfusion-maui-autocompleteImplements and configure Syncfusion .NET MAUI Autocomplete (SfAutocomplete) control for intelligent text input with suggestions. Use when implementing autocomplete, autosuggest, type-ahead search, smart search, or filtered dropdowns in .NET MAUI applications. Covers data binding, filtering modes, custom search logic, AI-powered search, multi-selection with tokens, and UI customization.
syncfusion-maui-avatar-viewImplements Syncfusion .NET MAUI Avatar View (SfAvatarView) for displaying user profile pictures, initials, or group avatars. Use when working with avatar views, profile pictures, user images, initials display, profile icons, or contact images. Ideal for implementing user profile displays, contact lists, chat interfaces, or social feeds.
syncfusion-maui-backdropImplements Syncfusion .NET MAUI Backdrop Page (SfBackdropPage) with back layer and front layer surfaces. Use when working with backdrop pages, SfBackdropPage, back layer, front layer, or reveal/conceal animations. Covers backdrop navigation patterns, header icons, corner shapes, reveal height, layer state events, and liquid glass effect.
syncfusion-maui-badge-viewImplements Syncfusion .NET MAUI Badge View (SfBadgeView) control. Use when adding badge notifications, status indicators, unread counts, or notification overlays to MAUI applications. Covers SfBadgeView setup, badge text customization, position adjustments, animations, predefined symbols, and accessibility features.
syncfusion-maui-barcode-generatorImplements Syncfusion .NET MAUI Barcode Generator (SfBarcodeGenerator) for generating machine-readable barcodes. Use when working with barcodes, barcode generation, QR codes, data matrix, EAN codes, UPC codes, Code128, or Code39. This skill covers both one-dimensional (linear) and two-dimensional (matrix) barcode symbologies with extensive customization options.
syncfusion-maui-busy-indicatorImplements Syncfusion .NET MAUI Busy Indicator (SfBusyIndicator) for showing loading states, data processing, and app activity indicators. Use when displaying loading indicators, busy animations, activity spinners, or processing feedback in .NET MAUI apps. Covers busy indicator setup, animations, and visual feedback during long-running operations.
syncfusion-maui-buttonImplements and customize Syncfusion .NET MAUI Button (SfButton) control. Use when working with MAUI buttons, SfButton implementation, button customization, or visual states. Covers button icons, background images, RTL support, Liquid Glass effects, custom button views, button styling, events, and checkable buttons.
syncfusion-maui-calendarImplements and customize Syncfusion .NET MAUI Calendar (SfCalendar) control. Use when implementing calendar functionality, date selection (single, multiple, range), or calendar views (month, year, decade, century). Covers date restrictions (min/max dates, EnablePastDates, SelectableDayPredicate), calendar customization, events (ViewChanged, SelectionChanged, Tapped), and header/footer customization.