在xaml前台指定source是没错的,但在后台的一个button按钮后写的
mediaElement1.Source = new Uri("DOTA2.wmv", UriKind.Relative);
mediaElement1.Play();
一直失败,改了好多种一直不行
网上也有类似的问题,但我一直找不到正确的回答,求教各位大大
把文件“/DOTA2.wmv”放在ClientBin目录下即可。或者把DOTA2.wmv发布movies虚拟目录或者发布网站也可以,
public Video()
{
InitializeComponent();
try
{
mediaElement1.AutoPlay = true;
mediaElement1.Source = new Uri("http://192.168.0.1/movies/DOTA2.wmv", UriKind.RelativeOrAbsolute);
mediaElement1.Position = TimeSpan.FromMilliseconds(0);
mediaElement1.Play();
}
catch
{
}
}
如果确定了路径没有错误,那就是你的文件的格式不对,虽然你的文件的后缀名是 .wmv,你可以用微软提供的一个编码器重新对你的文件进行编码,然后再试试,这个编码工具,跟那个express blend一起发布的,网上可以找找
在前台指定source是可以播放的,在后台就不行了,有2个wmv文件都是这样的
@小灰狼的脑瓜:
UriKind.Relative 这个不是还有第3个选项,绝对andrelatvie的选项吗?试试
@chenping2008:
或者,就是你你那个wmv资源 属性,就是content 选择 resource试试
应该是把文件属性设置成Content吧。
之前上网也有人这样说,还是不行
@小灰狼的脑瓜: 以下是我写的测试代码。
public Video()
{
InitializeComponent();
try
{
mediaElement1.AutoPlay = true;
mediaElement1.Source = new Uri("/DOTA2.wmv", UriKind.RelativeOrAbsolute);
mediaElement1.Position = TimeSpan.FromMilliseconds(0);
mediaElement1.Play();
}
catch
{
}
}
如果还不行,就得怀疑你的电脑硬件问题了。据说MediaElement对硬件有要求,比如需要独立显卡并且要有硬件加速。