如何在Windows 7 for .NET中的任务栏上执行叠加图标

时间:2012-02-07 19:38:42

标签: .net vb.net windows-7 overlay taskbar

Microsoft的UX guidelines建议我使用overlay icons来显示我的应用程序何时有关于状态的信息,例如未读消息或连接。

但是,我没有太多运气找到关于如何开始在我的应用程序中使用叠加图标的明确教程。有人可以推荐一个,或者更好的是,在他们的博客上创建一个教程来改善人类?

(问题标题专门提到了Windows 7,但我认为将Vista包含在本教程中以及Windows XP的向后兼容性等方面也很有用。)

编辑:这个问题确实是在使用WinForms的.NET 3.5中提出的。如果您下载ken2k's answer中下面引用的Windows API代码包,则可以使用以下快速代码段。

Imports Microsoft.WindowsAPICodePack.Taskbar
' Add reference to Microsoft.WindowsAPICodePack.Shell.dll
' Snipped...

If TaskbarManager.IsPlatformSupported Then
  TaskbarManager.Instance.SetOverlayIcon(icon, altText)
End If

1 个答案:

答案 0 :(得分:2)

我建议使用包含所有shell编程内容的Windows® API Code Pack for Microsoft® .NET Framework

您会找到very detailed article here,它会告诉您如何使用它。

请注意,Windows®APICode Pack不适用于XP(不支持),并且对Vista非常有限。例如,覆盖图标仅适用于Windows 7。