一尘不染

窗口“在桌面上”

c#

我使用Rainlendar已有一段时间了,我注意到它可以选择将窗口置于“桌面”。这就像一个bottomMost窗口(相对于最顶部)。

如何在WPF应用程序上执行此操作?

谢谢


阅读 229

收藏
2020-05-19

共1个答案

一尘不染

我的回答是针对Win32 API,而不是特定于WPF(可能需要从C#进行P /调用):

Rainlendar有两种选择:

  • “在桌面上”将成为资源管理器桌面窗口(“程序管理器”)的子级。您可以使用SetParent API 实现此目的。
  • 您所描述的是“在底部”-它的窗口位于Z顺序的底部,就在桌面的前面。将它们放在那里很容易(请参阅SetWindowPos)-诀窍是阻止它们在被单击时位于最前面。我建议处理WM_WINDOWPOSCHANGING消息。
2020-05-19