使用WPF中的TaskBarItemInfo获取Win 7任务栏中的进度条

时间:2011-04-20 21:38:37

标签: wpf windows-7 progress-bar taskbar

有没有人在进行ProgressValue时有一个WPF示例通过可用的枚举状态更新ProgressState?

我有以下代码将我的进度值绑定为从0到1运行:

<Window.TaskbarItemInfo>
    <TaskbarItemInfo Description="An app with a taskbar info description" 
                     ProgressValue="{Binding Count}" ProgressState="Normal"/>
</Window.TaskbarItemInfo>

但是,从正常或其他流程的好方法是什么:无 - 正常 - 暂停 - 正常 - 无即可。 上面的代码显示左侧的进度条为0%,然后以100%(1)结束。 我想我可以将它与转换器绑定到我的ViewModel的另一个属性,但是想看看是否有人有任何更流畅的解决方案。

谢谢!

2 个答案:

答案 0 :(得分:4)

ProgressValue是双倍的 使用0到1之间的值

答案 1 :(得分:2)

与绑定ProgressValue的方式相同,您也可以绑定ProgressState。 ProgressState的类型是一个名为TaskbarItemProgressState的枚举,其中包含您已经提到的状态。

public enum TaskbarItemProgressState
{
    // Summary:
    //     No progress indicator is displayed in the taskbar button.
    None = 0,
    //
    // Summary:
    //     A pulsing green indicator is displayed in the taskbar button.
    Indeterminate = 1,
    //
    // Summary:
    //     A green progress indicator is displayed in the taskbar button.
    Normal = 2,
    //
    // Summary:
    //     A red progress indicator is displayed in the taskbar button.
    Error = 3,
    //
    // Summary:
    //     A yellow progress indicator is displayed in the taskbar button.
    Paused = 4,
}

我认为'slicekest'方法是你已经提到的方式,无论是使用转换器还是手动