我正在尝试使用Windows Phone 7中的MediaElement播放mp3。这是代码。请帮助我,我甚至没有得到错误......但这首歌也没有播放......
private void button1_Click_1(object sender, RoutedEventArgs e)
{
mediaElement.Source = new Uri("Song.mp3", UriKind.Relative);
if (mediaElement.CurrentState == MediaElementState.Playing)
{
button1.Content = "Pause";
mediaElement.Pause();
}
else
{
button1.Content = "Play";
mediaElement.Play();
}
}
XAML Page
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<MediaElement Height="201" HorizontalAlignment="Left" Margin="9,6,0,0" Name="mediaElement" VerticalAlignment="Top" Width="441" />
<Button Content="Button" Height="72" HorizontalAlignment="Left" Margin="12,213,0,0" Name="button1" VerticalAlignment="Top" Width="438" />
</Grid>
答案 0 :(得分:0)
请确保该文件的URI是正确的。并且Song.mp3需要设置为“内容”而不是“资源”文件。而且我认为您还需要在文件中设置“复制到目标,如果更新”。
答案 1 :(得分:0)
媒体元素需要加载其媒体才能调用Play(),否则不会发生任何事情。加载媒体时会触发事件MediaOpened。
myMediaElement.MediaOpened += (o, args) => myMediaElement.Play();
答案 2 :(得分:0)
在XAML中:
{<Grid x:Name="ContentPanel" Margin="12,160,12,0" Grid.RowSpan="2">
<Button Content="Xaml Play" Name="button1" Click="button1_Click" />
<MediaElement x:Name="playSound" Source="sounds/Loose.wav" AutoPlay="False" Height="0" Width="0" /></Grid>}
“
在C#中:
private void button1_Click(object sender, RoutedEventArgs e)
{
playSound.Play();
}
希望这有助于:)