C# 如何在Silverlight 4中从WebBrowser控件平滑过渡到图像?

C# 如何在Silverlight 4中从WebBrowser控件平滑过渡到图像?,c#,silverlight,xaml,transitions,vsm,C#,Silverlight,Xaml,Transitions,Vsm,我的页面上有以下XAML: <Grid x:Name="LayoutRoot"> <Viewbox Stretch="Uniform"> <Image x:Name="myImage" /> </Viewbox> <WebBrowser x:Name="myBrowser" /> </Grid> 及 这很好,但是客户端现在想要的是在显示图像和显示浏览器之


我的页面上有以下XAML:

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

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

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

非常感谢您的帮助

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

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


这里有一篇MSDN文章可以帮助您入门:

您好,谢谢您的回答。我尝试在两个对象之间转换的是Image和WebBrowser。这似乎就是问题所在:WebBrowser不允许我设置不透明度的动画(至少我不能让它工作)。它也不允许我在它上面画任何东西(据我所知,这在SL4上是不可能的)?WebBrowser类确实有一个不透明度属性,这意味着它应该是可设置动画的(这是一个单词吗?)-请参阅MSDN WebBrowser类:关于不透明度,您似乎是对的。我已经测试并更改WebBrowser控件的不透明度没有效果。您可能需要开始查看其他类型的转换,例如在画布外设置WebBrowser动画,然后在画布上设置图像从画布外到画布上的动画。
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;