【问题标题】:How can I write windows 7 desktop gadgets using c# & WPF?如何使用 c# 和 WPF 编写 Windows 7 桌面小工具?
【发布时间】:2011-10-10 20:03:42
【问题描述】:

我想编写一个桌面小工具,它将我桌面上的图标分组(使用 c# 和 WPF)。 这将是一个停靠窗口,我可以将图标拖到它上面,它们将保持原样。也可以有几个这样的窗口。

我从哪里开始?

**我在这里看到了所有关于它的帖子,但我迷路了。请引导我到示例和解释页面。

【问题讨论】:

    标签: c# wpf windows-7 windows-desktop-gadgets


    【解决方案1】:

    也许this 会帮助你。

    在 C# 中使用 Silverlight 3.0 或 4.0 控件轻松开始开发 Sideber 小工具的模板。

    【讨论】:

    • 我认为我在这里遗漏了一些东西......我想使用 C# WPF 而不是 silverlight 编写它
    • @Alex Silverlight 与 WPF 几乎相同。除了一些缺失的功能。
    【解决方案2】:

    扩展 cevik 的答案:

    您不能将 WPF 应用程序创建为小工具但是您有两个选择(没有您预期的那么糟糕)。

    原因是小部件主要由网页 (HTML) 组成,而不是可执行文件 (*.exe)。
    问题当然是 WPF 只能使用和生成可执行文件。

    第一个选项 - Windows API:
    当我说你不能时,我真正的意思是你不能使用 Windows Vista/7 小工具平台来制作你的小部件。

    但是,您始终可以使用 Windows API 实现类似的效果。
    Windows API 可以让你对窗口做一些事情,比如让它们总是在其他程序的背景上,这对我来说听起来像 ~80% 那里(剩下的就是确保你的窗口不会被重新调整大小或最小化等)。

    请注意,您要寻找的使窗口位于所有其他窗口后面的函数将是 SetWindowPos(特别是第二个参数)。
    但是请确保没有一个库已经实现了这些东西,因为它可能相当困难(并且包含 A LOT 的惊喜)。

    第二个选项 - Silverlight
    可以被视为 Web 的 WPF。
    这显然解决了我们的问题。

    不过,正如预期的那样,这是有代价的。
    Silverlight 不具备 WPF 的所有功能(可能也不具备 .NET 框架的所有功能,我不确定,因为我并没有真正使用它)。

    但是,它应该足以让您通过,所以您一定要检查一下。

    拥有 Silverlight 应用程序(和网页)后,您必须创建清单并将小工具安装到您的桌面。请参阅here 操作方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-05
      • 2010-10-28
      • 1970-01-01
      • 2011-01-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多