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 == true)
    {
        // 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 任务栏按钮中显示进度指示器来传达长时间运行的任务的进度。 指示器的颜色由 ProgressState 属性决定,该属性包含枚举值之 TaskbarItemProgressState 一。 当 为 ProgressStateNormal时,指示器为绿色。 当 为 时 Paused,指示器为黄色。 当 为 时 Error,指示器为红色。 对于这些状态, ProgressValue 属性确定进度指示器填充了多少任务栏按钮。 ProgressValue 对于 的其他值 ProgressState,将忽略 。 Indeterminate 显示整个任务栏按钮上的绿色脉冲指示器。 没有显示 的 None指示器。

下图显示了处于 状态的任务栏进度指示器 Normal

任务栏项信息示例
Windows 任务栏进度指示器

适用于