在 Windows 7 中将 WPF 窗口固定在桌面上
我想在桌面上固定一个 WPF 窗口(它应该是一个桌面小工具)。
我知道您可以通过将 WPF 窗口的父句柄设置为“progman”窗口的句柄来做到这一点。
但这并不能阻止按下“Windows + D”时隐藏WPF窗口。
必须有另一种方法来做到这一点。当按下“Windows + D”时,Windows 7 中的新桌面小工具不会隐藏。 MS 开发人员是如何实现这一目标的?
I want to pin a WPF window on the desktop (it should be a desktop gadget).
I know you can do this by setting the parent handle of the WPF window to the handle of the "progman" window.
But this does not prevent the hiding of the WPF window when "Windows + D" is pressed.
There must be another way do to this. The new desktop gadgets in Windows 7 are not hidden when "Windows + D" is pressed. How did the MS developers achieve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为最好的选择是创建一个小工具并使用以下选项之一托管您的 WPF
1- 使用 IFrame 托管 WPF。
WPF Vista 小工具 - 第 1 部分:使用 XBAP 和 IFRAME
2- 使用 ActiveX 在小工具中托管的 WPF
http://blogs.msdn.com/ karstenj/archive/2006/10/09/activex-wpf-gadget.aspx
http://blogs.msdn.com/jaimer/archive/2006/10/02/writing-a-.net-activex-control-for-your-sidebar-gadget_2E002E00_.aspx
链接的文章适用于 Vista,但概念应该是相同的,因为 Windows 7 小工具向后兼容 Vista 小工具。
I think your best bet would be to create a Gadget and host your WPF using either of the following options
1- WPF hosted using an IFrame.
WPF Vista Gadgets - Part 1: Using XBAP and IFRAME
2- WPF hosted in the Gadget using ActiveX
http://blogs.msdn.com/karstenj/archive/2006/10/09/activex-wpf-gadget.aspx
http://blogs.msdn.com/jaimer/archive/2006/10/02/writing-a-.net-activex-control-for-your-sidebar-gadget_2E002E00_.aspx
The linked articles are for Vista but the concepts should be the same since Windows 7 gadgets are backwards compatible with Vista gadgets.
试试这个
在 VS 中创建 XBAP 应用程序。
遵循 Window Gadget 的标准模式。
从网页中的java脚本调用XBAP应用程序exe。
最后压缩您的目录结构并将其扩展名更改为 .gadget
您的 wpf 小工具已准备好部署
Try this
Create a XBAP Application in VS.
Follow the standard pattern of a Window Gadget.
Call the XBAP app exe from java script in the web page.
Finally zip your directory structure and change its extension to .gadget
your wpf gadget is ready to deploy