我在KnownFolders.VideoLibrary文件夹中有一个mp4视频,我可以通过MediaElement Control(MyPlayer)播放它作为使用此代码的流:
var file = await KnownFolders.VideosLibrary.GetFileAsync("video.mp4");
var stream = await file.OpenAsync(FileAccessMode.Read);
MyPlayer.SetSource(stream, file.FileType);
但我无法使用Source属性进行播放:
var file = await KnownFolders.VideosLibrary.GetFileAsync("video.mp4");
MyPlayer.Source = new Uri(file.Path, UriKind.Absolute);
但Source属性适用于本地资产文件:
MyPlayer.Source = new Uri(this.BaseUri, "Assets/video.mp4");
任何想法为什么?每当文件位于VideoLibrary文件夹中时,我也无法将视频绑定到XAML中的Source属性。如果文件是应用程序的资产,则效果很好。
现在,如果我必须为库中的视频使用流和SetSource,我该如何从ViewModel绑定它?
答案 0 :(得分:0)
我通过使用ContentControl解决了这个问题,并将MediaElement绑定到它。我写了一篇关于它的短篇博文。
Binding MediaElement to a ViewModel in a Windows 8 Store App