Skip to main content

syncfusion-aspnetcore-stepper

Create and configure ASP.NET Core Stepper controls to support multi-step workflows and progressive user interfaces. This skill should be applied when implementing step navigation, wizards, progress trackers, form flows, checkout processes, or any sequential step-based UI. It is also relevant whenever requirements involve steppers, step validation, step navigation, linear flows, or step-based state management.

Informações da origem

Repositório
syncfusion/aspnetcore-ui-components-skills
Última atividade na origem
6 de julho de 2026 às 07:20
Idioma detectado do SKILL.md
inglês
Estrelas
0
Forks
2

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
10 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
syncfusion-aspnetcore-stepper
description
Create and configure ASP.NET Core Stepper controls to support multi-step workflows and progressive user interfaces. This skill should be applied when implementing step navigation, wizards, progress trackers, form flows, checkout processes, or any sequential step-based UI. It is also relevant whenever requirements involve steppers, step validation, step navigation, linear flows, or step-based state management.
metadata
{"author":"Syncfusion Inc","version":"34.1.29","category":"Navigation Controls"}
# Implementing ASP.NET Core Stepper Control The Syncfusion ASP.NET Core Stepper is a navigation component that guides users through a series of logical steps in a sequential workflow. Use it for wizards, multi-step forms, checkout processes, and any experience requiring step-by-step progression. ## When to Use This Skill - **Multi-step forms or wizards** - Guide users through sequential data collection - **Checkout flows** - Show shopping cart → shipping → payment → confirmation - **Progress tracking** - Display task or process completion status - **Linear workflows** - Enforce sequential step progression (e.g., registration, onboarding) - **Status visualization** - Show which steps are completed, in-progress, or pending - **Step validation** - Display validation state (success/error) for each step ## Control Overview **Key Capabilities:** - Sequential step navigation with automatic or manual progression - Multiple step display types (default with indicators + labels, label-only, indicator-only) - Horizontal and vertical orientations for different layouts - Step status management (NotStarted, InProgress, Completed) - Step validation with success/error indicators - Linear mode for enforcing sequential progression - Rich templating for custom step content - Events for step changes, validation, and interactions - Tooltips with custom templates for additional guidance - Animation effects for smooth transitions - Localization and RTL support --- ## Installation and Setup **Read:** [references/getting-started.md](references/getting-started.md) - NuGet package installation - TagHelper registration in _ViewImports.cshtml - CDN and NPM resource includes - Basic project setup --- ## Creating Your First Stepper **Quick Start Example - Basic horizontal stepper with 4 steps:** ```html <ejs-stepper id="stepper" activeStep="0"> <e-stepper-steps> <e-stepper-step iconCss="sf-icon-cart" label="Shopping Cart" text="Review items"></e-stepper-step> <e-stepper-step iconCss="sf-icon-transport" label="Shipping" text="Enter address"></e-stepper-step> <e-stepper-step iconCss="sf-icon-payment" label="Payment" text="Select payment"></e-stepper-step> <e-stepper-step iconCss="sf-icon-success" label="Confirmation" text="Order complete"></e-stepper-step> </e-stepper-steps> </ejs-stepper> ``` **Vertical stepper:** ```html <ejs-stepper id="stepper" orientation="Vertical"> <e-stepper-steps> <e-stepper-step iconCss="sf-icon-cart" label="Cart"></e-stepper-step> <e-stepper-step iconCss="sf-icon-transport" label="Shipping"></e-stepper-step> <e-stepper-step iconCss="sf-icon-payment" label="Payment"></e-stepper-step> </e-stepper-steps> </ejs-stepper> ``` --- ## Stepper Properties **Complete reference:** [references/stepper-properties-reference.md](references/stepper-properties-reference.md) **Key Stepper-Level Properties (15 total):** - `activeStep` - Current step index (0-based) - `animation` - Step transition animation configuration - `cssClass` - CSS class for component styling - `enablePersistence` - Persist state across page reloads - `enableRtl` - Right-to-left layout support - `labelPosition` - Label placement (Top, Bottom, Start, End) - `linear` - Sequential-only progression mode - `locale` - Localization culture setting - `orientation` - Horizontal or Vertical layout - `readOnly` - Disable all interactions - `showTooltip` - Display tooltips on hover - `stepType` - Visual style (Default, Label, Indicator) - `steps` - Array of step definitions - `template` - Custom step content template - `tooltipTemplate` - Custom tooltip template --- ## Step Properties **Complete reference:** [references/stepper-properties-reference.md](references/stepper-properties-reference.md) **Step-Level Properties (8 total):** - `cssClass` - CSS class for individual step - `disabled` - Disable specific step - `iconCss` - Icon CSS class - `isValid` - Validation state (true/false/null) - `label` - Step label text - `optional` - Mark step as optional - `status` - Step status (NotStarted, InProgress, Completed) - `text` - Step descriptive text --- ## Animation Properties **Animation Configuration (3 properties):** - `enable` - Enable/disable animation - `duration` - Animation duration in milliseconds - `delay` - Delay before animation starts **Example:** ```html <ejs-stepper id="stepper"> <e-stepper-animation enable="true" duration="1000" delay="500"></e-stepper-animation> <e-stepper-steps> <e-stepper-step label="Step 1"></e-stepper-step> <e-stepper-step label="Step 2"></e-stepper-step> </e-stepper-steps> </ejs-stepper> ``` --- ## Stepper Methods **Complete reference:** [references/stepper-methods-reference.md](references/stepper-methods-reference.md) **Available Methods (12 total):** - `nextStep()` - Move to next step programmatically - `previousStep()` - Move to previous step - `addEventListener(eventName, handler)` - Add event listener - `removeEventListener(eventName, handler)` - Remove event listener - `dataBind()` - Apply pending property changes - `refresh()` - Re-render component - `refreshProgressbar()` - Update progress bar position - `reset()` - Reset to first step - `getRootElement()` - Get root DOM element - `destroy()` - Clean up component - `appendTo(selector)` - Append to target element --- ## Events and Event Arguments **Complete reference:** [references/events-and-interactions.md](references/events-and-interactions.md) **Available Events (5 total):** ### created Fires after stepper rendering completes. - **Args:** Event object ### stepChanged Fires after active step successfully changes. - **Args:** `activeStep`, `element`, `event`, `isInteracted`, `name` ### stepChanging Fires before active step changes (allows cancellation for validation). - **Args:** `activeStep`, `cancel`, `element`, `event`, `isInteracted` ### stepClick Fires when user clicks a step. - **Args:** `activeStep`, `previousStep`, `element`, `event`, `name` ### beforeStepRender Fires before rendering each step (allows dynamic modifications). - **Args:** `index`, `element`, `name` --- ## Step Types and Orientations **Read:** [references/step-types-and-styles.md](references/step-types-and-styles.md) - Default step type (icons + labels) - Label-only step type with label positioning (Top, Bottom, Start, End) - Indicator-only step type - Horizontal orientation (side-by-side steps) - Vertical orientation (stacked steps) - Visual appearance customization --- ## Step Configuration **Read:** [references/steps-configuration.md](references/steps-configuration.md) - Defining step icons with iconCss property - Adding text content and labels to steps - Optional step indicator - Disabling steps to prevent interaction - Setting active step with activeStep property - Step status values (NotStarted, InProgress, Completed) - Applying CSS classes for custom styling - Step validation with isValid property --- ## Events and Interactions **Read:** [references/events-and-interactions.md](references/events-and-interactions.md) - Created event when stepper finishes rendering - stepChanged event after active step changes - stepChanging event before step change (validation point) - stepClick event when user clicks a step - beforeStepRender event for dynamic step modification - Linear navigation mode for sequential-only progression - Event pattern examples --- ## Templates and Customization **Read:** [references/templates-and-customization.md](references/templates-and-customization.md) - Custom step templates with step model context - Tooltip configuration and display - Tooltip templates for detailed step information - CSS class customization - CSS properties for styling - Theme and appearance customization - Animation effects with duration and delay --- ## Advanced Features **Read:** [references/advanced-features.md](references/advanced-features.md) - Animation configuration (enable, duration, delay) - Linear flow for sequential-only step progression - Localization and locale customization - RTL (right-to-left) layout support - Readonly mode to disable all interactions - Accessibility considerations - Performance optimization --- ## Step Validation **Read:** [references/steps-validation.md](references/steps-validation.md) - Step validation patterns (isValid property) - Form validation with stepChanging event - Async validation patterns with fetch API - Real-time validation on user input - Validation state values (true/false/null) --- ## Common Patterns ### Wizard Pattern with Linear Navigation For forms that require sequential step completion, enable linear mode: ```html <ejs-stepper id="wizard" linear="true"> <e-stepper-steps> <e-stepper-step iconCss="sf-icon-cart" label="Cart"></e-stepper-step> <e-stepper-step iconCss="sf-icon-transport" label="Shipping"></e-stepper-step> <e-stepper-step iconCss="sf-icon-payment" label="Payment"></e-stepper-step> </e-stepper-steps> </ejs-stepper> ``` ### Step Validation Pattern Validate form content before allowing step progression using `stepChanging` event: ```html <ejs-stepper id="wizard" linear="true" stepChanging="validateStep"> <e-stepper-steps> <e-stepper-step iconCss="sf-icon-cart" label="Cart"></e-stepper-step> <e-stepper-step iconCss="sf-icon-transport" label="Shipping"></e-stepper-step> <e-stepper-step iconCss="sf-icon-payment" label="Payment"></e-stepper-step> </e-stepper-steps> </ejs-stepper> <script> function validateStep(args) { var form = document.getElementById('stepForm'); if (!form.checkValidity()) { args.cancel = true; // Prevent step change alert('Please complete all required fields'); } } </script> ``` ### Dynamic Content Pattern Load and display different content based on active step: ```html <ejs-stepper id="stepper" activeStep="@Model.CurrentStep" stepChanged="onStepChanged"> <e-stepper-steps> <!-- Steps here --> </e-stepper-steps> </ejs-stepper> <div id="content"> <!-- Content loads dynamically based on active step --> </div> <script> function onStepChanged(args) { loadContentForStep(args.activeStep); } function loadContentForStep(stepIndex) { // Load content via AJAX or from pre-loaded data } </script> ``` --- ## Common Use Cases 1. **E-commerce checkout** - Cart → Address → Payment → Confirmation 2. **User registration** - Account info → Email verification → Profile → Complete 3. **Application wizard** - Requirements → Configuration → Review → Deploy 4. **Onboarding flow** - Welcome → Profile → Preferences → Start 5. **Task workflow** - Analyze → Plan → Execute → Review 6. **Multi-form survey** - Demographics → Questions part 1 → Questions part 2 → Summary
Ver no GitHub