c# WPF comment répéter MediaElement la lecture à partir de mediaended gestionnaire d'événement sans déclarer une nouvelle source?
im la lecture d'une vidéo en WPF.je veux qu'il boucle donc ce que j'ai fait, c'est quand le mediaended événement se déclenche, ce que je peux lire ma vidéo. donc, cela va me faire une boucle. prob c'est pourquoi u-je créer une nouvelle source de nouveau? pourquoi ne peux-je viens de l'appeler "jouer"?
je ne veux pas le faire dans le code XAML comme pour certaines raisons.
jeter un oeil à mon code snippet:
string startPath System.IO.Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName);
public Window1()
{
InitializeComponent();
media.Source = new Uri(startPath + @"playlist.wpl");
media.play();
}
private void Media_Ended(object sender, EventArgs e)
{
media.Source = new Uri(startPath + @"playlist.wpl"); //if i dont put this line, video wont play..seems like it cant get the source
media.Play();
}
ou est-il une bonne façon de boucle non PAS dans le code XAML, mais ici .cs fichier?
OriginalL'auteur Psychocryo | 2011-05-12
Vous devez vous connecter pour publier un commentaire.
Au lieu de la réinitialisation de la Source au début de votre Media_Ended gestionnaire, essayez de définir la valeur de la Position dos à la position de départ. La propriété Position est un laps de Temps de sorte que vous voudrez probablement quelque chose comme...
Hmmm...c'est étrange. Je l'ai testé, mais avec un fichier audio pas une vidéo. Je ne sais pas pourquoi la vidéo serait différent - je vais prendre un autre regard.
Pour certaines raisons, cette combinaison n'est pas de travail, parfois! Dans mon cas, pour gif.
Il a échoué pour moi :(. J'ai un fichier son au format mp3 avec 1 seconde durée...
OriginalL'auteur IanR
Vous n'avez même pas besoin de mettre LoadedBehavior comme Manuel il suffit de laisser comme Jouer.
Et sur MediaEnded événement que vous devez définir la nouvelle position de la vidéo qui sera pas égale à zéro:
OriginalL'auteur Ievgen Naida
Je le faire fonctionner réglage de la UnloadedBehavior="Manuel" et les suivants du code
Réglage de la position Zéro n'a pas fonctionné...
OriginalL'auteur Guido Zanon
Je pense que vous devriez utiliser ce code :
J'espère que cela aidera.
Cela a fonctionné pour moi, vous ne pouvez pas appeler "Jeu" si la LoadBehaviour a déjà été mis à Jouer dans le XAML.
OriginalL'auteur Visal
Vous n'avez pas à définir la source de nouveau.Il suffit de régler la position de la mediaelement le début sur la media_ended événementVous pouvez avoir besoin de définir MediaElement.LoadedBehavior de ManuelMODIFIER
J'ai essayé de chargement d'un fichier asf avec la RÉPÉTITION de la balise et sa fonctionne bien
Mais je pense que la fonction intégrée de liste de lecture d'un mécanisme de gestion de mediaelement a quelques défauts.Je recommande la solution mentionnée dans le lien ci-dessous
http://blog.revolunet.com/index.php/general/wpf-mediaelement-asx-workaround
Poster un commentaire ici si vous avez un problème
Ainsi, après l'intégralité de la liste est fini...vous voulez répéter à partir du premier fichier de droit ?
Aussi comment voulez-vous gérer votre liste de lecture ? AFIK Le MediaElement n'est intégré dans la liste de lecture d'un mécanisme de gestion.
ouais.je veux jouer tous depuis le début.donc je n'ai tout de même que votre instruction, mais la source du média est une .wpl fichier. j'ai essayé un .fichier asx, mais le même résultat.il ne marche pas le répéter. si j'utilise la source de médias tels que la lexus.mp4, tout va bien à l'aide d'ur instruction..une idée?
Ma réponse est mise à jour.Veuillez vérifier
OriginalL'auteur biju