1

我有XAML爲ContentControl中:如何在播放音頻文件mp3時使MediaElement可見?

<ContentControl x:Name = "MyPlayer">  
    <StackPanel /> 
</ContentControl> 

然後,我在代碼中添加的MediaElement這個ContentControl中:

this.myPlayer.Content = new MediaElement() { 
Source = new Uri(@"http://mysite/myfile.mp3"), 
Visibility = Visibility.Visible 
}; 

然後當我運行應用程序,玩家不會播放該文件,但沒有視覺播放器。屏幕保持空白。

如何放置視覺播放器元素,以便用戶可以暫停/停止/重放播放源?

回答

1

您需要創建背後的邏輯自己的按鈕和代碼播放/暫停/回放等。您可以使用此作爲參考:http://msdn.microsoft.com/en-us/library/ms748248.aspx

或者,你可以使用CodePlex上媒體播放器框架:http://smf.codeplex.com/ 這爲媒體播放器創建了模板。

我相信你也需要爲MediaElement指定一個高度/寬度,如果你想看到的東西,但你期望看到一個MP3文件?

另外,ContentControl的需求是什麼?你爲什麼不把MediaElement放在xaml中?

+0

謝謝。甚至放高度和寬度,仍然看不到任何東西。我使用ContentControl是因爲我想通用播放器可以播放視頻,音頻,圖像時源類型不同。 – KentZhou 2012-07-06 18:11:43

+0

由於沒有與之相關的視頻,因此您不會看到MP3的任何內容。您可以將MediaElement包裝在邊框中,然後放置邊框的背景圖像: 您也可以在代碼中做到這一點的背後:MyPlayer.Content =新的邊界{BACKGROUND =新的SolidColorBrush(Colors.Blue),兒童=新的MediaElement {源=新的URI(「HTTP:// mysite的/ myfile的。 mp3「)}}; – Misha 2012-07-06 18:37:55

+0

太棒了!謝謝。將嘗試它。 – KentZhou 2012-07-06 18:58:58