Wpf-progressbar

提供:Dev Guides
移動先:案内検索

WPF-プログレスバー

ProgressBarは、操作の進行状況を示すコントロールです。典型的な視覚的外観は、進行状況が継続するにつれて塗りつぶされた領域をアニメーション化するバーです。 次の2つのスタイルのいずれかで進行状況を表示できます-

  • 繰り返しパターンを表示するバー、または *値に基づいて塗りつぶされるバー。

ProgressBarクラスの階層的な継承は次のとおりです-

プログレスバーの階層

ProgressBarの一般的に使用されるプロパティ

ProgressBarの最も一般的に使用されるプロパティを以下に示します。

Sr.No. Property & Description
1
  • IsIndeterminate*

進行状況バーが繰り返しパターンで一般的な進行状況を報告するか、Valueプロパティに基づいて進行状況を報告するかどうかを示す値を取得または設定します。

2

IsIndeterminateProperty

IsIndeterminate依存プロパティを識別します。

3

ShowError

進行状況バーがエラー状態をユーザーに伝える視覚的な状態を使用する必要があるかどうかを示す値を取得または設定します。

4

ShowErrorProperty

ShowError依存プロパティを識別します。

5

ShowPaused

進行状況バーが一時停止状態をユーザーに伝える視覚状態を使用する必要があるかどうかを示す値を取得または設定します。

6

ShowPausedProperty

ShowPaused依存プロパティを識別します。

7

TemplateSettings

ProgressBarコントロールのテンプレートを定義するときにTemplateBindingソースとして参照できる計算値を提供するオブジェクトを取得します。

ProgressBarクラスで一般的に使用されるイベント

ProgressBarの最も一般的に使用されるイベントを以下に示します。

Sr.No. Event & Description
1

ManipulationCompleted

UIElementの操作が完了したときに発生します。 (UIElementから継承)

2

ManipulationDelta

入力デバイスが操作中に位置を変更すると発生します。 (UIElementから継承)

3

ManipulationInertiaStarting

入力デバイスが操作中にUIElementオブジェクトとの接触を失い、慣性が始まると発生します。 (UIElementから継承)

4

ManipulationStarted

入力デバイスがUIElementで操作を開始すると発生します。 (UIElementから継承)

5

ManipulationStarting

操作プロセッサが最初に作成されたときに発生します。 (UIElementから継承)

6

ValueChanged

範囲の値が変更されたときに発生します。 (RangeBaseから継承)

ProgressBarクラスで一般的に使用されるメソッド

以下に、ProgressBarの最も一般的に使用されるメソッドを示します。

Sr.No. Method & Description
1

OnManipulationCompleted

ManipulationCompletedイベントが発生する前に呼び出されます。 (Controlから継承)

2

OnManipulationDelta

ManipulationDeltaイベントが発生する前に呼び出されます。 (Controlから継承)

3

OnManipulationInertiaStarting

ManipulationInertiaStartingイベントが発生する前に呼び出されます。 (Controlから継承)

4

OnManipulationStarted

ManipulationStartedイベントが発生する前に呼び出されます。 (Controlから継承)

5

OnManipulationStarting

ManipulationStartingイベントが発生する前に呼び出されます。 (Controlから継承)

6

OnMaximumChanged

Maximumプロパティが変更されたときに呼び出されます。 (RangeBaseから継承)

7

OnMinimumChanged

Minimumプロパティが変更されたときに呼び出されます。 (RangeBaseから継承)

8

OnValueChanged

ValueChangedルーティングイベントを発生させます。 (RangeBaseから継承)

9

SetBinding

提供されたバインディングオブジェクトを使用して、FrameworkElementにバインディングをアタッチします。 (FrameworkElementから継承されます)

10

SetValue

DependencyObjectの依存関係プロパティのローカル値を設定します。 (DependencyObjectから継承)

  • WPFProgressBarControl という名前の新しいWPFプロジェクトを作成しましょう。
  • 次の例は、ProgressBarコントロールの使用方法を示しています。 2つのProgressBarコントロールが作成および初期化されるXAMLコードを次に示します。
<Window x:Class = "WPFProgressBarControl.MainWindow"
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
   xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
   xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
   xmlns:local = "clr-namespace:WPFProgressBarControl"
   mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604">

   <Grid>
      <StackPanel x:Name = "LayoutRoot" Margin = "20">

         <Border BorderThickness = "5" BorderBrush = "Green">
            <StackPanel Background = "White">
               <TextBlock HorizontalAlignment = "Center" Margin = "10"
                  Text = "Value-Based Progress Bar"/>
               <ProgressBar x:Name = "pg1" Value = "100"  Margin = "10" Maximum = "200"
                  Height = "15" IsIndeterminate = "False"/>
            </StackPanel>
         </Border>

         <Border BorderThickness = "5" BorderBrush = "Green">
            <StackPanel Background = "White">
               <TextBlock HorizontalAlignment = "Center"
                  Margin = "10" Text = "Indeterminate Progress Bar"/>
               <ProgressBar x:Name = "pg2" Margin = "10" Height = "15"
                  IsIndeterminate = "True"/>
            </StackPanel>
         </Border>

      </StackPanel>
   </Grid>

</Window>

上記のコードをコンパイルして実行すると、次のウィンドウが生成されます。

プログレスバーの出力

上記のサンプルコードを実行し、ProgressBarクラスの他のプロパティとイベントを試すことをお勧めします。