次の方法で共有


TaskbarItemInfo.ProgressState プロパティ

定義

プログレス インジケーターをタスク バー ボタンにどのように表示するかを示す値を取得または設定します。

public:
 property System::Windows::Shell::TaskbarItemProgressState ProgressState { System::Windows::Shell::TaskbarItemProgressState get(); void set(System::Windows::Shell::TaskbarItemProgressState value); };
public System.Windows.Shell.TaskbarItemProgressState ProgressState { get; set; }
member this.ProgressState : System.Windows.Shell.TaskbarItemProgressState with get, set
Public Property ProgressState As TaskbarItemProgressState

プロパティ値

プログレス インジケーターをタスク バー ボタンにどのように表示するかを示す列挙値。 既定値は、None です。

次の例は、コードで ProgressState プロパティを設定する方法を示しています。 状態は、バックグラウンド タスクがユーザーによって停止されたか、エラーで終了したか、正常に完了したかを示すために、イベントのハンドラー BackgroundWorker.RunWorkerCompleted で設定されます。 この例は、 クラスに対して提供される大きな例の TaskbarItemInfo 一部です。

void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
    // When the task ends, change the ProgressState and Overlay
    // of the taskbar item to indicate a stopped task.
    if (e.Cancelled)
    {
        // The task was stopped by the user. Show the progress indicator
        // in the paused state.
        this.taskBarItemInfo1.ProgressState = TaskbarItemProgressState.Paused;
    }
    else if (e.Error != null)
    {
        // The task ended with an error. Show the progress indicator
        // in the error state.
        this.taskBarItemInfo1.ProgressState = TaskbarItemProgressState.Error;
    }
    else
    {
        // The task completed normally. Remove the progress indicator.
        this.taskBarItemInfo1.ProgressState = TaskbarItemProgressState.None;
    }
    // In all cases, show the 'Stopped' overlay.
    this.taskBarItemInfo1.Overlay = (DrawingImage)this.FindResource("StopImage");
}
Private Sub bw_RunWorkerCompleted(ByVal sender As Object, ByVal e As RunWorkerCompletedEventArgs)
    ' When the task ends, change the ProgressState and Overlay
    ' of the taskbar item to indicate a stopped task.
    If e.Cancelled = True Then
        ' The task was stopped by the user. Show the progress indicator
        ' in the paused state.
        Me.taskBarItemInfo1.ProgressState = TaskbarItemProgressState.Paused
    ElseIf e.Error IsNot Nothing Then
        ' The task ended with an error. Show the progress indicator
        ' in the error state.
        Me.taskBarItemInfo1.ProgressState = TaskbarItemProgressState.Error
    Else
        ' The task completed normally. Remove the progress indicator.
        Me.taskBarItemInfo1.ProgressState = TaskbarItemProgressState.None
        ' In all cases, show the 'Stopped' overlay.
        Me.taskBarItemInfo1.Overlay = Me.FindResource("StopImage")
    End If
End Sub

注釈

Windows 7 タスク バー ボタンに進行状況インジケーターを表示することで、実行時間の長いタスクの進行状況を伝えることができます。 インジケーターの色は、列挙値の TaskbarItemProgressState 1 つをProgressState含む プロパティによって決まります。 が のProgressStateNormal場合、インジケーターは緑色です。 の場合 Paused、インジケーターは黄色です。 の場合 Error、インジケーターは赤です。 これらの状態の場合、 プロパティは ProgressValue 、進行状況インジケーターで塗りつぶされるタスク バー ボタンの量を決定します。 ProgressValue は の他の値では ProgressState無視されます。 Indeterminate は、タスク バー ボタン全体に緑色の点滅インジケーターを表示します。 のインジケーターは表示 Noneされません。

次の図は、タスク バーの進行状況インジケーターの状態を Normal 示しています。

タスク バー項目情報サンプル
Windows タスク バーの進行状況インジケーター

適用対象