我为 wp7 创建了一个录音机。在那我实际上使用了一个列表框(命名为 filesListBox)来显示录制的音频文件,如果用户点击任何文件,那么它只是播放音频(不是 MediaPlayerLauncher)。它工作得很好。
private void filesListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
string filename = (string)e.AddedItems[0];
PlayFromIS(filename);
}
在此之后,我使用MediaPlayerLauncher从列表框中播放录制的音频文件。它实际上打开了文件,但是在播放音频时,它的速度非常低并且声音变成了某种东西。
private void filesListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
try
{
string filename = (string)e.AddedItems[0];
MediaPlayerLauncher mediaPlayerLauncher = new MediaPlayerLauncher();
mediaPlayerLauncher.Media = new Uri(filename, UriKind.Relative);
mediaPlayerLauncher.Controls = MediaPlaybackControls.All;
mediaPlayerLauncher.Location = MediaLocationType.Data;
mediaPlayerLauncher.Orientation = MediaPlayerOrientation.Landscape;
mediaPlayerLauncher.Show();
}
catch (IndexOutOfRangeException x)
{
}
}
因此,我创建了一个 MediaElement.xaml 页面并在其中添加了一个MediaElement。但我不知道如何像媒体播放器启动器那样访问 MediaElement.xaml 页面中的文件名(来自 MainPage.xaml)。
myMediaElement.Source = new Uri("??Don't know what to write here to access the filename??", UriKind.Relative);
我认为MediaPlayerLauncher比MediaElement好得多,但任何一个都被接受。有人可以帮我吗?提前感谢您的辛勤工作!