syncfusion-wpf-circular-progressbar
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseImplementing SfCircularProgressBar (WPF)
实现SfCircularProgressBar(WPF)
When to Use This Skill
适用场景
Use this skill when:
- Displaying circular/radial progress for a known task (determinate)
- Showing an indeterminate spinner while progress is unknown
- Visualizing primary + secondary (buffer) progress simultaneously
- Splitting progress into segments (e.g., steps in a workflow)
- Customizing arc angles (semi-circle, full circle, partial arc)
- Styling progress ring colors, gradients, or range-based colors
- Placing custom content (text, buttons, images) at the center of the ring
Assembly:
Namespace:
XAML Schema:
Key Class:
Syncfusion.SfProgressBar.WPFSyncfusion.UI.Xaml.ProgressBarhttp://schemas.syncfusion.com/wpfSfCircularProgressBar在以下场景中使用该控件:
- 为已知任务展示圆形/径向进度(确定状态)
- 进度未知时显示不确定状态的加载动画
- 同时可视化主进度与次级(缓冲)进度
- 将进度拆分为分段(如工作流中的步骤)
- 自定义弧形角度(半圆、整圆、部分弧形)
- 为进度环设置颜色、渐变或基于范围的配色
- 在进度环中心放置自定义内容(文本、按钮、图片)
程序集:
命名空间:
XAML架构:
核心类:
Syncfusion.SfProgressBar.WPFSyncfusion.UI.Xaml.ProgressBarhttp://schemas.syncfusion.com/wpfSfCircularProgressBarQuick Start
快速开始
xaml
<Window
xmlns:Syncfusion="http://schemas.syncfusion.com/wpf">
<Grid>
<!-- Determinate: shows 70% progress -->
<Syncfusion:SfCircularProgressBar
Progress="70"
ShowProgressValue="True"
Width="150" Height="150" />
</Grid>
</Window>csharp
using Syncfusion.UI.Xaml.ProgressBar;
SfCircularProgressBar circular = new SfCircularProgressBar();
circular.Progress = 70;
circular.ShowProgressValue = true;
circular.Width = 150;
grid.Children.Add(circular);xaml
<Window
xmlns:Syncfusion="http://schemas.syncfusion.com/wpf">
<Grid>
<!-- 确定状态:显示70%进度 -->
<Syncfusion:SfCircularProgressBar
Progress="70"
ShowProgressValue="True"
Width="150" Height="150" />
</Grid>
</Window>csharp
using Syncfusion.UI.Xaml.ProgressBar;
SfCircularProgressBar circular = new SfCircularProgressBar();
circular.Progress = 70;
circular.ShowProgressValue = true;
circular.Width = 150;
grid.Children.Add(circular);Documentation and Navigation Guide
文档与导航指南
Getting Started
入门指南
📄 Read: references/getting-started.md
- NuGet/assembly installation ()
Syncfusion.SfProgressBar.WPF - XAML namespace and schema declaration
- Declaring the control in XAML and code-behind
- Setting the property
Progress - Theme integration via SfSkinManager
📄 阅读: references/getting-started.md
- NuGet/程序集安装()
Syncfusion.SfProgressBar.WPF - XAML命名空间与架构声明
- 在XAML和代码后置中声明控件
- 设置属性
Progress - 通过SfSkinManager集成主题
States
状态说明
📄 Read: references/states.md
- Determinate state (default) with
ShowProgressValue - Indeterminate state () for unknown progress
IsIndeterminate="True" - Buffer state (,
SecondaryProgress)SecondaryProgressColor - Decision guide: which state to use when
📄 阅读: references/states.md
- 确定状态(默认)与属性
ShowProgressValue - 不确定状态()用于进度未知场景
IsIndeterminate="True" - 缓冲状态(、
SecondaryProgress)SecondaryProgressColor - 状态选择决策指南
Appearance & Customization
外观与自定义
📄 Read: references/appearance.md
- Arc shape via /
StartAngleEndAngle - Radius and thickness: ,
IndicatorOuterRadius,IndicatorInnerRadius,TrackOuterRadiusTrackInnerRadius - Solid color: ,
ProgressColorTrackColor - Range-based colors: with
RangeColor,Start,EndColor - Gradient effect:
RangeColor.IsGradient - Rounded ends:
IndicatorCornerRadius - Animation: ,
AnimationDurationAnimationEasing
📄 阅读: references/appearance.md
- 通过/
StartAngle设置弧形形状EndAngle - 半径与厚度:、
IndicatorOuterRadius、IndicatorInnerRadius、TrackOuterRadiusTrackInnerRadius - 纯色设置:、
ProgressColorTrackColor - 基于范围的配色:结合
RangeColor、Start、End属性Color - 渐变效果:
RangeColor.IsGradient - 圆角端点:
IndicatorCornerRadius - 动画:、
AnimationDurationAnimationEasing
Segments & Custom Content
分段与自定义内容
📄 Read: references/segments-and-custom-content.md
- to split ring into discrete steps
SegmentCount - for center UI (text, buttons, images)
ProgressContent - Binding center text to value
Progress - Play/Pause button with pattern
DispatcherTimer
📄 阅读: references/segments-and-custom-content.md
- 将进度环拆分为离散步骤
SegmentCount - 用于设置中心UI(文本、按钮、图片)
ProgressContent - 将中心文本绑定到值
Progress - 使用模式实现播放/暂停按钮
DispatcherTimer
Key Properties
核心属性
| Property | Type | Default | Purpose |
|---|---|---|---|
| | | Current progress value (0–100) |
| | | Display numeric % in center |
| | | Indeterminate spinning animation |
| | | Buffer/secondary progress value |
| | | Arc start angle in degrees |
| | | Arc end angle in degrees |
| | | Number of segments (0 = none) |
| | theme | Color of the progress arc |
| | theme | Color of the track arc |
| | | Rounded ends on the progress arc |
| | | Indeterminate animation cycle time |
| | | Custom center content |
| 属性 | 类型 | 默认值 | 用途 |
|---|---|---|---|
| | | 当前进度值(0–100) |
| | | 在中心显示百分比数值 |
| | | 启用不确定状态的旋转动画 |
| | | 缓冲/次级进度值 |
| | | 弧形起始角度(度数) |
| | | 弧形结束角度(度数) |
| | | 分段数量(0表示无分段) |
| | 主题默认 | 进度弧形的颜色 |
| | 主题默认 | 轨道弧形的颜色 |
| | | 进度弧形的端点圆角 |
| | | 不确定状态动画的周期时长 |
| | | 自定义中心内容 |
Common Use Cases
常见使用场景
- File upload indicator — determinate with
ShowProgressValue="True" - Loading spinner — indeterminate ()
IsIndeterminate="True" - Media player — with play/pause button
ProgressContent - Step tracker — matching total steps
SegmentCount - CPU/memory gauge — mapping green/yellow/red zones
RangeColors - Semi-circle gauge —
StartAngle="180"EndAngle="360"
- 文件上传指示器 — 确定状态,设置
ShowProgressValue="True" - 加载动画 — 不确定状态()
IsIndeterminate="True" - 媒体播放器 — 使用添加播放/暂停按钮
ProgressContent - 步骤追踪器 — 与总步骤数匹配
SegmentCount - CPU/内存仪表盘 — 使用映射绿/黄/红区间
RangeColors - 半圆仪表盘 — 设置
StartAngle="180"EndAngle="360"