Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将C#程序(例如WPF或WF或带有Mono)放在desctop图标(如墙纸)下?_C#_Wpf_Windows_Mono_Icons - Fatal编程技术网

如何将C#程序(例如WPF或WF或带有Mono)放在desctop图标(如墙纸)下?

如何将C#程序(例如WPF或WF或带有Mono)放在desctop图标(如墙纸)下?,c#,wpf,windows,mono,icons,C#,Wpf,Windows,Mono,Icons,如何将C#程序(例如WPF或WF)放在desctop图标(如墙纸)下 我希望我的旧的好XP活动桌面由一些开源C#程序在我的Win 7上制作!) 类似这样的-。 他们有“窗口”出现在图标下面。我不想管理图标-只是把我的窗口放在它们下面。。。顺便说一句,有人知道其他操作系统(Mac等)中的此类操作吗 我不想自己管理所有图标,比如 简单的回答是,你不能真正做到这一点(无论如何,在托管C#中)。如果可能的话,您将需要使用互操作,并且您可能会调用Windows没有提供的API 。。。虽然。。。正如Ole

如何将C#程序(例如WPF或WF)放在desctop图标(如墙纸)下


  • 我希望我的旧的好XP活动桌面由一些开源C#程序在我的Win 7上制作!)

  • 类似这样的-。 他们有“窗口”出现在图标下面。我不想管理图标-只是把我的窗口放在它们下面。。。顺便说一句,有人知道其他操作系统(Mac等)中的此类操作吗

  • 我不想自己管理所有图标,比如


    • 简单的回答是,你不能真正做到这一点(无论如何,在托管C#中)。如果可能的话,您将需要使用互操作,并且您可能会调用Windows没有提供的API

      。。。虽然。。。正如Ole Jak提到的,看起来是在以某种方式做

      桌面是它自己包含的项目。同样的过程处理图标和这些图标后面的墙纸

      您可以将墙纸更改为不同的图像,并且您过去可以创建一个显示HTML内容的位置,但这在Vista中已停止


      你到底想做什么?也许还有其他方法可以达到类似的效果?

      vista也有。您可以将视频作为浏览器背景。我不知道您是否可以运行C程序来输出背景视频。

      我认为这是很有可能的,请尝试以下方法:

    • 用类“Progman”查找窗口的句柄
    • 在应用程序中创建一些窗口(或者,在一些单独的应用程序中,您稍后将看到其用途),并关闭其边框
    • 将新创建窗口的父窗口设置为桌面句柄
    • 将以前找到的“Progman”窗口的父窗口设置为您创建的窗口
    • 桌面将被放在你的应用程序拥有的一个窗口上,并且可以按照你想要的方式操作它(即,在它下面放置一些东西)

      另外,当拥有桌面的应用程序关闭时,不要忘记恢复桌面的父级


      中查找FindWindow、GetClassName和SetParent,您可能希望对其进行更好的表述。您希望您编写的程序在运行时显示在桌面图标下方吗?是的,我确实希望您编写的程序在运行时显示在桌面图标下方!)我希望我的旧的好XP活动桌面由一些开源C#程序在我的Win 7上制作!)问题是你说的是操作系统的核心——除非微软想让你这么做,否则很难用它做任何事情!你说桌面是核心。。。陛下但对于ex来说,图标下面有“窗口”。我不想管理图标-只是把我的窗口放在它们下面。。。顺便说一句,有人知道其他操作系统(Mac等)中的此类操作吗?好吧,那个程序很有趣。。。我的猜测是,他们正在使用一些相当低级的操作,而不是调用一个已建立的API。我真的不知道他们是怎么做的。也许他们正在删除所有图标并在自己的程序中复制他们的行为?运行一个C#程序来输出视频并不难,但如何将其设置为back,如果我们ex想与它交互。。。