2010-04-19 46 views
4

我想编写一个C#应用程序,它在桌面壁纸上以叠加层的形式运行。类似于桌面小部件或Rainmeter(rainmeter.net)运行的方式;在其他应用程序后面,但在桌面墙纸之上。壁纸应用程序的代码示例?

我找不到任何这种行为的C#示例。有人能指向我一些代码吗?

这里是我感兴趣创建一个例子:http://jabz.us/uploaded_images/screenCaptureRainmeter.png

+0

这种风格不适用于任何事情,但它看起来很光滑。 – lumberjack4 2010-04-21 22:03:44

回答

2

为什么不使用WPF的窗户是borderless(因此静态的,但你可以通过使用this code再次移动它们),transparentbelow all other windows?您可能不得不每隔100ms左右轮询每个窗口,以避免用户意外点击它。我用一些标签做了一些测试,看起来很好。

例如,使用此代码并每隔一段时间轮询“低于所有其他窗口”的方法。

<Window x:Class="WpfTest.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="LearnWPF.BorderlessWindow" Height="200" Width="200" 
    WindowStyle="None" ResizeMode="NoResize" AllowsTransparency="True" 
    Background="Transparent" 
> 
    <Border Padding="5" BorderBrush="#feca00" 
     BorderThickness="3" Width="150" Height="150"> 
     <TextBlock>Learn WPF!</TextBlock> 
    </Border> 
</Window> 
+0

完美。那正是我正在寻找的。谢谢。 – TERACytE 2010-04-21 19:55:02