Wie spielt man einen sound in WPF
Ich bin ein Neuling C# - Programmierer und habe Probleme damit, Musik zu spielen, in meiner WPF - (Windows -) Anwendung mit VS 2008. Dies ist eine web-app. Was ich denke, passiert ist, ist myMediaElementExample
variable leer ist an der Zeit, es wird verwendet, um führen Sie die Play
Methode in der ExpenseReportPage.xaml.cs
- Datei.
Recht jetzt dieses Programm baut, aber nachdem ich es starten, es trifft auf eine Ausnahme an der myMediaElementExample.Play();
Linie. Die Ausnahme sagt:
An unhandled win32 exception occurred in the WpfApplication1.vhost.exe [948].
Kann einer von Euch mir Tipps geben auf was ich sonst noch versuchen könnte? Ich habe nur den code für dieses problem relevant:
ExpenseReportPage.xaml.cs-Datei:
namespace ExpenseIt
{
public partial class ExpenseReportPage : Page
{
... }
public partial class MediaElementExample : Page
{
MediaElement myMediaElementExample = new MediaElement();
public MediaElementExample()
{
}
public void OnMouseDownPlayMedia(object sender, RoutedEventArgs args) //MouseButtonEventArgs
{
//The Play method will begin the media if it is not currently active or
//resume media if it is paused. This has no effect if the media is
//already running.
myMediaElementExample.Play();
}
}
}
HomePage.xaml.cs-Datei:
namespace ExpenseIt
{
public partial class HomePage : Page
{
MediaElementExample mediaElementExample = new MediaElementExample();
public HomePage()
{
InitializeComponent();
}
void HandleClick(object sender, RoutedEventArgs e)
{
Button srcButton = e.Source as Button;
srcButton.Width = 200;
mediaElementExample.OnMouseDownPlayMedia(sender, e);
}
}
}
Wo sind Sie, die Einstellung der Medien-Quelle, d.h. die mp3/wav zu spielen?
InformationsquelleAutor salvationishere | 2009-12-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für debugging-Zwecke surround-die line:
mit einem
try{} catch{}
block:Dies wird Ihnen mehr Informationen über das, was verursacht die Ausnahme. Wenn es noch unklar ist, aktualisieren Sie die Frage mit diesen neuen Informationen.
Wenn
myMediaElementExample
null war, dann würde ich erwarten, dass Sie bekommen würde, eineSystem.NullReferenceException
eher als die win32 man Sie sehen. Sie können dies überprüfen, indem ein Haltepunkt auf dermyMediaElementExample.Play();
Linie und untersuchte es.Sobald Sie haben Sie gefunden und das problem behoben, Sie könnten entfernen Sie die exception-handler oder wenn Sie wollen, vorsichtig zu sein, lassen Sie es in, aber nur abfangen der Ausnahmen, die
MediaElement.Play
wirft.InformationsquelleAutor ChrisF
Danke Chris und Norla. Ich fand die exception-Ursache:
Jedoch fand ich eine wirklich einfache Abhilfe! Ich googeln die Lösung:
in der xaml-Datei.
InformationsquelleAutor salvationishere
Die Lösung zu deiner ursprünglichen Frage hinzufügen LoadedBehavior="Manuell", um Ihre MediaElement in Ihrem XAML-Code. E. g.:
InformationsquelleAutor danglund