0


我的页面上有以下 XAML:

<Grid x:Name="LayoutRoot">  
        <Viewbox Stretch="Uniform">  
        <Image x:Name="myImage" />  
    </Viewbox>  
    <WebBrowser x:Name="myBrowser"  />  
</Grid>

然后在代码隐藏中,我在图像和浏览器内容之间切换可见性:

myBrowser.Visibility = Visibility.Collapsed;  
            myImage.Source = new BitmapImage(new Uri(p));  
            myImage.Visibility = Visibility.Visible;

myImage.Visibility = Visibility.Collapsed;  
            myBrowser.Source = new Uri(myPath + p, UriKind.Absolute);  
            myBrowser.Visibility = Visibility.Visible;

这很好用,但是客户端现在想要的是在显示图像和显示浏览器之间的平滑过渡。我尝试了几种方法,但总是陷入死胡同。你有什么想法?

我尝试使用 VSM 设置两个状态,而不是在交换发生之前在顶部显示一个白色矩形作为覆盖,但这不起作用(我猜是因为没有任何东西可以放在 WebBrowser 上方?)我尝试设置使用 VSM 的图像控件和 webbrowser 控件的可见性,但这也不起作用。我真的不知道还有什么可以尝试解决这个简单的任务。

任何帮助是极大的赞赏。

4

1 回答 1

0

如果您正在寻找“平滑”过渡,您可能想尝试淡入和淡出控件。动画每个对象的不透明度。例如,将 ViewBox 的不透明度设置为零,将图像的不透明度设置为 100。然后为两个对象的不透明度属性设置动画。

最终结果将是从一个对象到另一个对象的平滑过渡。

这是一篇 MSDN 文章,可帮助您入门:动画概述

于 2011-01-31T15:29:29.143 回答