Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在windows phone 7中设置MediaElement的源?_C#_Xaml_Windows Phone 7 - Fatal编程技术网

C# 在windows phone 7中设置MediaElement的源?

C# 在windows phone 7中设置MediaElement的源?,c#,xaml,windows-phone-7,C#,Xaml,Windows Phone 7,我试图在C#中设置媒体元素的源。这就是我正在做的 XAML部件 <MediaElement x:Name="Sound" AutoPlay="False" /> <Button Content="Shout!" Height="123" Name="button2" Width="123" Click="shout_Click" /> 上述方法不起作用。但是,如果我在xaml中手动设置路径,它就会工作。如何在C#中设置aMediaElement的源代码 您是遇到了错误

我试图在C#中设置媒体元素的源。这就是我正在做的

XAML部件

<MediaElement x:Name="Sound" AutoPlay="False" />

<Button Content="Shout!" Height="123" Name="button2" Width="123" Click="shout_Click" />

上述方法不起作用。但是,如果我在xaml中手动设置路径,它就会工作。如何在C#中设置a
MediaElement
的源代码

您是遇到了错误,还是只是没有播放?尝试添加正斜杠,Dovahkiin:

this.Sound.Source = new Uri("/Sounds/fusrodah.wma", UriKind.Relative);

我试过了,就是不起作用。没有错误,什么也没有。PS:我猜你已经知道我正在制作的应用程序的类型;)将MediaFailed事件附加到mediaplayer<代码>Sound.MediaFailed+=新事件处理程序(Sound_MediaFailed)检查是否调用了此事件及其包含的消息。我这样做了。它没有失败。只是不玩而已。然而,我刚刚发现,如果我在play()函数之前放置一个断点并等待3秒钟,它就会播放。也许是它通过了那个密码?我有没有办法让代码“休眠”?你可以使用
Thread.sleep
,但我不推荐它,因为它既不准确也不友好。相反,尝试处理
MediaOpened
事件,就像处理
mediafiled
事件一样,然后将
Sound.Play()
放入该事件中。它应该在媒体加载后立即启动。MediaOpened的工作非常出色。非常感谢你在我的两个问题上帮了我大忙。
this.Sound.Source = new Uri("/Sounds/fusrodah.wma", UriKind.Relative);