2010-05-26 52 views
0

我使用Silverlight 3.0 + .Net 3.5 + VSTS 2008 + C#开发使用Silverlight的MediaElement的简单视频应用程序。Silverlight MediaElement问题

我有两个视频,我想同时播放它们(类似于画中画效果) - 即两个视频的一部分在播放时重叠(Z-Order的相同概念UI设计)。我想在其他MediaElement之上播放一个MediaElement,我想知道如何分配重叠顺序(类似于设置Z-Order UI元素,但我没有找到MediaElement具有Z-Order属性)?

回答

1

您可以将您的MediaElement置于Canvas之内。 Canvas元素内的元素继承它的Canvas.ZIndex属性。

<Canvas x:Name="MediaPlayerPanel" Width="200" Height="200"> 
    <MediaElement x:Name="Media1" Height="200" Width="200" Source="file1.wmv" Canvas.ZIndex="1" /> 
    <MediaElement x:Name="Media2" Canvas.Top="20" Canvas.Left="20" Height="100" Width="100" Source="file2.wmv" Canvas.ZIndex="2" /> 
</Canvas> 

这应该适合你!

+0

如何在代码中动态设置ZIndex?以及如何在代码中动态设置Canvas.Top? – George2 2010-05-26 16:03:37

+1

在Silverlight中,最好不要在代码中设置任何内容,但使用DataBinding。例如,将Canvas.Top的值设置为“{Binding TopProperty}”并定义一个名为TopProperty的公共属性,返回“int”。你需要更多的指示吗?关于如何使用DataBinding的一些一般提示:http://msdn.microsoft.com/en-us/library/cc278072%28VS.95%29.aspx – thmshd 2010-05-26 17:28:46

+0

谢谢,问题回答! – George2 2010-05-27 07:06:31