WPF切换桌面,幻灯片有效

时间:2011-05-20 13:31:36

标签: c# wpf

我想显示一个全屏图像,当我得到一个拖动鼠标事件时,我可以在其中运行幻灯片,该事件将在其下方显示另一个图像。

幻灯片动画有点像:http://docs.jquery.com/UI/Effects/Slide

我想知道WPF的各种组件,以便产生这样的效果。

编辑(更具体):

我想

1)屏幕上有一个热点,如右边缘垂直中心

2)当用户将鼠标指针放在此位置时,他可以用鼠标向右拉动屏幕,我的应用程序将启动,就好像它位于屏幕下方一样。 我正在为触摸屏做这个,所以我希望它是一种温和的滑动类型。)

我正在考虑实现它:当指针点击热点时,截取屏幕截图,转换/动画显示我之前拍摄的截图,因为鼠标将顶部图像向右拖动。

这是我应该采取的方式吗?

1 个答案:

答案 0 :(得分:4)

您需要的只是fullscreen WPF application

有两个堆叠的图像:

<Window>
    <Grid>
        <Image ... MouseMove="...">
            <Image.RenderTransform>
                <TranslateTransform />
            </Image.RenderTransform>
        </Image>
        <Image .../>
    </Grid>
</Window>

以及当鼠标移到顶部图像上方时启动的动画:

<Storyboard>
    <DoubleAnimation To="768" Duration="0:00:10" 
                     Storyboard.TargetName="translation" 
                     Storyboard.TargetProperty="OffsetY"/>
</Storyboard>

当然,您可以使用行为而不是事件处理程序。

(此代码中可能存在错误,因为我没有测试它)

修改

更多关于问题中的补充信息:

是的,这可以做到。有许多对taking screenshots here on SO的引用。

Using touch and swipes can be done with WPF

如果您希望此逻辑在系统范围内可用,则必须install a mouse/touch hook,以便您可以使用任何应用程序响应此手势。