.net 从Windows资源管理器命名空间扩展使用Windows 7任务栏进度指示器

.net 从Windows资源管理器命名空间扩展使用Windows 7任务栏进度指示器,.net,winforms,windows-7,explorer,.net,Winforms,Windows 7,Explorer,我有一个名称空间扩展,当用户执行某些操作时,我们会在一个单独的窗口中显示一个进度条。理想情况下,我们应该在地址栏中使用Windows资源管理器内置的进度指示器,但我被告知,我的组件供应商没有提供用于此操作的API。我使用Windows代码包1.1来获取.NET API 此进度窗口是常规的Windows窗体窗口。我包含了以下代码: ... using System.Windows.Forms; using Microsoft.WindowsAPICodePack.Taskbar; ... publ

我有一个名称空间扩展,当用户执行某些操作时,我们会在一个单独的窗口中显示一个进度条。理想情况下,我们应该在地址栏中使用Windows资源管理器内置的进度指示器,但我被告知,我的组件供应商没有提供用于此操作的API。我使用Windows代码包1.1来获取.NET API

此进度窗口是常规的Windows窗体窗口。我包含了以下代码:

...
using System.Windows.Forms;
using Microsoft.WindowsAPICodePack.Taskbar;
...
public sealed partial class ProgressWindow : Form, IProgressPresenter
{
    ...
    public int ProgressLevel
    {
        get { return JobProgress.Value; }
        set
        {
            JobProgress.Value = value;

            if (TaskbarManager.IsPlatformSupported)
            {
                TaskbarManager.Instance.SetProgressValue(value, 99);
            }
        }
    }
...

我希望浏览器图标显示进度,但这不会发生。我尝试将Handle属性添加为参数,但这似乎没有帮助

你设置状态了吗

TaskbarManager.Instance.SetProgressState(TaskbarProgressBarState.Error);
那会给你一个红色的。暂停为黄色,正常为绿色

理想情况下,我们应该使用窗口 浏览器内置进程指示器 在地址栏,但我听说 我的网站上没有这个API 组件供应商

如果它是一个名称空间扩展,您应该使用IProgressDialog界面,那么它的内置资源管理器和nativity支持Windows7上的任务栏进度指示器


dmex

是-我在进度开始变为TaskbarProgressBarState.Normal时初始化了它。谢谢你的提示。您知道在Win7上是否可以获取Windows资源管理器地址栏的进度指示吗?