HOW TO:繪製含有視訊的區域
更新:2007 年 11 月
本範例說明如何繪製含有媒體的區域。繪製含有媒體之區域的一個方法,就是一起使用 MediaElement 和 VisualBrush。先使用 MediaElement 載入及播放媒體,再使用它來設定 VisualBrush 的 Visual 屬性。接著,您就可以使用 VisualBrush 繪製一個載入媒體的區域。
範例
下列範例會使用 MediaElement 和 VisualBrush,以繪製含有視訊之 TextBlock 控制項的 Foreground。這個範例會將 MediaElement 的 IsMuted 屬性設定為 true,因此不會產生聲音。
MediaElement myMediaElement = new MediaElement();
myMediaElement.Source = new Uri("sampleMedia\\xbox.wmv", UriKind.Relative);
myMediaElement.IsMuted = true;
VisualBrush myVisualBrush = new VisualBrush();
myVisualBrush.Visual = myMediaElement;
TextBlock myTextBlock = new TextBlock();
myTextBlock.FontSize = 150;
myTextBlock.Text = "Some Text";
myTextBlock.FontWeight = FontWeights.Bold;
myTextBlock.Foreground = myVisualBrush;
<TextBlock FontSize="100pt" Text="Some Text" FontWeight="Bold">
<TextBlock.Foreground>
<VisualBrush>
<VisualBrush.Visual>
<MediaElement Source="sampleMedia\xbox.wmv" IsMuted="True" />
</VisualBrush.Visual>
</VisualBrush>
</TextBlock.Foreground>
</TextBlock>
因為 VisualBrush 繼承自 TileBrush 類別,所以它會提供數個並排顯示模式。藉由將 VisualBrush 的 TileMode 屬性設定為 Tile,並將其 Viewport 屬性設定為小於繪製區域的值,就可以建立並排顯示模式。
下列範例與前一個範例相同,但差別在於 VisualBrush 是從視訊產生模式。
MediaElement myMediaElement = new MediaElement();
myMediaElement.Source = new Uri("sampleMedia\\xbox.wmv", UriKind.Relative);
myMediaElement.IsMuted = true;
VisualBrush myVisualBrush = new VisualBrush();
myVisualBrush.Viewport = new Rect(0, 0, 0.5, 0.5);
myVisualBrush.TileMode = TileMode.Tile;
myVisualBrush.Visual = myMediaElement;
TextBlock myTextBlock = new TextBlock();
myTextBlock.FontSize = 150;
myTextBlock.Text = "Some Text";
myTextBlock.FontWeight = FontWeights.Bold;
myTextBlock.Foreground = myVisualBrush;
<TextBlock FontSize="100pt" Text="Some Text" FontWeight="Bold">
<TextBlock.Foreground>
<VisualBrush Viewport="0,0,0.5,0.5" TileMode="Tile">
<VisualBrush.Visual>
<MediaElement Source="sampleMedia\xbox.wmv" IsMuted="True" />
</VisualBrush.Visual>
</VisualBrush>
</TextBlock.Foreground>
</TextBlock>
如需如何在應用程式中加入內容檔案 (例如媒體檔案) 的詳細資訊,請參閱 Windows Presentation Foundation 應用程式資源、內容及資料檔案。當您加入媒體檔案時,您必須將它加入為內容檔案而非資源檔案。