我的应用程序内的电影无法加载

时间:2014-03-30 07:54:46

标签: c# wpf xaml mediaelement

我的应用程序以外的电影工作得很好。而我曾经用以下方式加载它们:

mediaElement.Source = new Uri(String.Format("file:///{0}/../Movies/" + mov, Directory.GetCurrentDirectory()));

但现在我已将电影添加到我的项目中,因为我希望最后导出单个EXE。所以我在这里添加了它们:

enter image description here

现在我用:

mediaElement.Source = new Uri(@"pack://application:,,,/Shamir Temp;component/Videos/" + mov);

但它似乎不起作用!任何人都知道为什么?

2 个答案:

答案 0 :(得分:2)

您无法播放资源文件中的媒体,您必须将其作为内容制作并始终复制到输出目录。

引用MediaElementClass的备注部分:

  

在使用您的应用程序分发媒体时,您无法使用媒体   将文件作为项目资源。在项目文件中,您必须改为设置   媒体类型为Content并将CopyToOutputDirectory设置为   保留最新或永远。

答案 1 :(得分:1)

在使用您的应用程序分发媒体时,您无法将媒体文件用作Project Resource,这可以针对Image文件进行。

在项目文件中,您必须将资源类型设置为Content,并将CopyToOutputDirectory设置为 PreserveNewest Always

有关详细信息,请参阅此链接:

MSDN: MediaElement