syncfusion-wpf-linear-progressbar について
WPF で SfLinearProgressBar を実装するためのガイドです。進捗状態や外観、セグメント表示の設定を説明します。
主な機能
- 01確定・不確定の進捗状態
- 02セカンダリバッファ進捗
- 03セグメント形式の進捗表示
- 04範囲別の色とグラデーション
- 05色、余白、角丸のカスタマイズ
活用シーン
- 01ファイルのダウンロード進捗表示
- 02所要時間が不明な処理のアニメーション
- 03動画のバッファリング表示
- 04段階的なタスクの完了状況追跡
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ syncfusion/ wpf-ui-components-skills --skill syncfusion-wpf-linear-progressbarインストール後、Claude Code で/syncfusion-wpf-linear-progressbarを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/appearance-and-segments.mdgetting-started.mdstates.md詳細
SfLinearProgressBar の実装(WPF)
このスキルを使用するタイミング
次のような場合にこのスキルを使用します。
- タスクの進捗が既知の場合に、水平プログレスバーを表示する(確定的)
- 進捗が不明な場合に、不確定なバウンスアニメーションを表示する
- 主進捗と副進捗(バッファー)を同時に可視化する
- 進捗を複数のセグメントに分割する
- 色、グラデーション、パディング、角の半径をカスタマイズする
- 進捗値の範囲に応じた色を適用する
アセンブリ: Syncfusion.SfProgressBar.WPF
名前空間: Syncfusion.UI.Xaml.ProgressBar
XAML スキーマ: http://schemas.syncfusion.com/wpf
主要クラス: SfLinearProgressBar
クイックスタート
<Window xmlns:Syncfusion="http://schemas.syncfusion.com/wpf">
<Grid x:Name="grid">
<Syncfusion:SfLinearProgressBar
Progress="70"
Width="500"
Height="20" />
</Grid>
</Window>
using Syncfusion.UI.Xaml.ProgressBar;
SfLinearProgressBar linear = new SfLinearProgressBar();
linear.Progress = 70;
linear.Width = 500;
linear.Height = 20;
grid.Children.Add(linear);
ドキュメントとナビゲーションガイド
はじめに
📄 参照: references/getting-started.md
- NuGet/アセンブリのインストール(
Syncfusion.SfProgressBar.WPF) - XAML 名前空間とスキーマの宣言
- XAML とコードビハインドでの宣言
Progressプロパティの設定- SfSkinManager によるテーマの統合
状態
📄 参照: references/states.md
- 既知の進捗に使用する確定状態(デフォルト)
- 所要時間が不明な場合に使用する不確定状態(
IsIndeterminate="True") - バッファー状態(
SecondaryProgress、SecondaryProgressColor) - 状態の使い分けガイド
- MVVM バインディングによる状態の動的な切り替え
外観とセグメント
📄 参照: references/appearance-and-segments.md
IndicatorCornerRadius— 端を丸くしますIndicatorPadding— トラックとプログレスバーの間隔ProgressColor/TrackColor— 単色のカスタマイズRangeColors:Start、End、Colorを指定するRangeColor- グラデーション:
RangeColor.IsGradient AnimationDuration/AnimationEasing(不確定状態のみ)SegmentCount— バーをセクションに分割します- 角の半径を設定したセグメント
主なプロパティ
| プロパティ | 型 | デフォルト | 用途 |
|---|---|---|---|
Progress | double | 0 | 現在の進捗値(0~100) |
IsIndeterminate | bool | false | 不確定なバウンスアニメーション |
SecondaryProgress | double | 0 | バッファー/副進捗値 |
SecondaryProgressColor | Brush | テーマ | バッファーバーの色 |
ProgressColor | Brush | テーマ | プログレスバーの色 |
TrackColor | Brush | テーマ | 背景トラックの色 |
IndicatorCornerRadius | double | 0 | プログレスバーの端を丸くします |
IndicatorPadding | Thickness | 0 | トラックとインジケーターの間隔 |
SegmentCount | int | 0 | セグメント数(0 = なし) |
AnimationDuration | TimeSpan | 3000ms | 不確定アニメーションのサイクル時間 |
よくあるユースケース
- ファイルダウンロードバー —
Progressをダウンロード率にバインドした確定状態 - 読み込みアニメーション — 不確定状態(
IsIndeterminate="True") - 動画のバッファリング —
Progressより先行するSecondaryProgress - ステップトラッカー — 総ステップ数に合わせた
SegmentCount - ヘルス/バッテリーバー —
RangeColorsで緑/黄/赤の範囲を設定 - スタイル付きプログレスピル —
IndicatorCornerRadius="10"でバーを丸くします
コメント
Markdown 対応