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;