none
Faire un reset d'un MediaElement RRS feed

  • Question

  • Bonjour,

    Je code actuellement pour mes études une application permettant de lire une web radio en ligne.

    Le code que je possède de fonctionne pas comme je le veux et je n'arrive pas a en faire les modifications.

    Il y a trois boutons, un bouton play, pause et stop. Le bouton play et pause fonctionnent mais dès que l'on appuie sur le bouton stop plus rien ne fonctionne:

    <phone:PhoneApplicationPage 
        x:Class="PhoneApp3.MainPage"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
        xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
        FontFamily="{StaticResource PhoneFontFamilyNormal}"
        FontSize="{StaticResource PhoneFontSizeNormal}"
        Foreground="{StaticResource PhoneForegroundBrush}"
        SupportedOrientations="Portrait" Orientation="Portrait"
        shell:SystemTray.IsVisible="True">
    
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>
    
            <MediaElement x:Name="media" AutoPlay="False" Source="http://stream01.platform02.true.nl:8000/qdance-hard" Width="300" Height="300" 
                      Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" Volume="1" />
    
            <!-- Stops media playback.-->
            <Button Click="StopMedia" 
         Grid.Column="0" Grid.Row="1" Content="Stop" />
    
            <!-- Pauses media playback. -->
            <Button Click="PauseMedia" 
         Grid.Column="1" Grid.Row="1" Content="Pause" />
    
            <!-- Begins media playback. -->
            <Button Click="PlayMedia" 
         Grid.Column="2" Grid.Row="1" Content="Play" />
    
        </Grid>
    </phone:PhoneApplicationPage>

    et voici le code c#:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Net;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Animation;
    using System.Windows.Shapes;
    using Microsoft.Phone.Controls;
    
    using System.Windows.Media.MediaStreamSource;
    
    namespace PhoneApp3
    {
        public partial class MainPage : PhoneApplicationPage
        {
            private void StopMedia(object sender, RoutedEventArgs e)
            {
                media.Stop();
               
               
    
                
            }
            private void PauseMedia(object sender, RoutedEventArgs e)
            {
                media.Pause();
            }
            private void PlayMedia(object sender, RoutedEventArgs e)
            {
                
                media.Play();
            }
    
            // Constructeur
            public MainPage()
            {
                InitializeComponent();
            }
        }
    }

    La base du code est fourni par microsoft mais ne fonctionne pas dans mon cas malgré de nombreux essaie...

    mercredi 19 septembre 2012 12:50

Réponses

  • Bonjour,

    La source semble streamé, en conséquence, comme la méthode Stop() effectue un Seek(0) sur la source (impossible sur un media streamé), il est normal que cela ne fonctionne pas.


    Pour que la discussion puisse être identifiée comme résolue merci de marquer les réponses qui vous ont aidées à solutionner votre problème comme "réponse".

    mercredi 19 septembre 2012 14:33