2010-05-26 80 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