Steuern der Wiedergabe von Medien in einem Silverlight-Projekt
Wenn Sie eine Mediendatei (Audio oder Video) einem Microsoft Silverlight 1.0-Projekt hinzufügen und dann auf der Zeichenfläche einfügen, wird die Datei einem MediaElement-Objekt hinzugefügt und für die automatische Wiedergabe konfiguriert. Dies unterscheidet sich vom Einfügen von Audio- oder Videodateien in ein Windows Presentation Foundation-Projekt, wodurch eine Zeitachse in einem Storyboard erstellt wird. In einem Microsoft Silverlight 1.0-Projekt können Sie die Wiedergabe einer Video- oder Audiodatei nicht auf die gleiche Weise wie bei einem Animationsstoryboard steuern.
Hinweis: |
---|
Mithilfe von Microsoft Expression Encoder 2 können Sie einen Media Player erstellen und dafür mithilfe einer der zahlreichen Silverlight 1.0-Vorlagen eine Skin erstellen. Der Media Player enthält bereits Schaltflächen zum Wiedergeben und Anhalten sowie andere Steuerelemente. Sie können Kopien der im Lieferumfang von Expression Encoder 2 enthaltenen Silverlight 1.0-Vorlagen ändern. Sie können aber auch das codierte Projekt in Expression Blend 2 öffnen, um weitere visuelle Elemente und Features hinzuzufügen. |
Gehen Sie wie folgt vor, um die Wiedergabe einer Mediendatei in einem Silverlight 1.0-Projekt in Expression Blend 2 zu steuern. Weitere Informationen zum Steuern der Medienwiedergabe in einem Silverlight 1.0-Projekt finden Sie unter Silverlight Quick (möglicherweise in englischer Sprache).
So steuern Sie die Wiedergabe einer Mediendatei in einem Silverlight 1.0-Projekt
Fügen Sie Ihrem Projekt eine Mediendatei hinzu. Sie können wie unter Hinzufügen von Mediendateien zu Silverlight 1.0-Projekten beschrieben vorgehen.
Benennen Sie das Medienobjekt um, um von der CodeBehind-Datei darauf zu verweisen. Klicken Sie z. B. mit der rechten Maustaste auf das Medienobjekt unter Objekte und Zeitachsen, klicken Sie auf Umbenennen, und geben Sie dann MyVideo ein.
Wenn Sie Benutzern ein Objekt zur Verfügung stellen möchten, auf das sie klicken können, um die Mediendatei zu beenden und zu starten, fügen Sie diese Objekte nun der Zeichenfläche hinzu, und benennen Sie sie um. Fügen Sie z. B. der Zeichenfläche eine Ellipse hinzu, und benennen Sie sie in Pause um. Weitere Informationen finden Sie unter Hinzufügen von Elementen zu XAML-Dokumenten in Silverlight-Projekten und Umbenennen eines Objekts.
Doppelklicken Sie im Projektpanel unter Dateien auf die CodeBehind-Datei für Ihr XAML-Dokument. Wenn z. B. das von Ihnen bearbeitete XAML-Dokument Page.xaml heißt, doppelklicken Sie auf die Datei Page.xaml.js. Die CodeBehind-Datei wird in Expression Blend 2 in einem JavaScript-Editor geöffnet.
Eine Beispielcodezeile zum Einbinden eines Ereignishandlers ist bereits in der CodeBehind-Datei vorhanden und sieht so oder ähnlich aus:
rootElement.addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleMouseDown));
Fügen Sie die folgende Zeile unterhalb dieser Codezeile hinzu:
this.control.content.findName("Pause").addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.handleClickPause));
Mit diesem Code wird die Ereignishandlermethode handleClickPause hinzufügt, die auf das MouseLeftButtonDown-Ereignis reagiert, wenn auf das Objekt Pause geklickt wird.
Die CodeBehind-Datei enthält bereits die Beispiel-Ereignishandlermethode handleMouseDown. Beachten Sie, dass am Ende der handleLoad-Methode ein Komma (,) nach der letzten geschweiften Klammer (}) vorhanden ist, dass aber nach der letzten geschweiften Klammer für die handleMouseDown-Methode kein Komma vorhanden ist. Dies liegt daran, dass handleMouseDown die letzte deklarierte Methode ist. Wenn Sie neue Methoden hinzufügen, sollten Sie sicherstellen, dass nach der letzten geschweiften Klammer für alle Methoden mit Ausnahme der letzten Methode ein Komma vorhanden ist.
Fügen Sie die folgende Ereignishandlermethode vorzugsweise vor dem handleMouseDown-Ereignis hinzu:
handleClickPause: function(sender, eventArgs) { sender.findName("MyVideo").pause(); },
Diese Methode wird aufgerufen, wenn ein Benutzer mit der linken Maustaste in das Objekt Pause klickt, und sie hält die Medienwiedergabe an.
Drücken Sie F5, um die Silverlight 1.0-Anwendung zu testen. Klicken Sie auf das Objekt Pause, um festzustellen, ob die Medienwiedergabe angehalten wird. Optional können Sie diese Schritte für die Schaltflächen Wiedergabe und Stopp wiederholen.