Uri relative travaille pour BitmapImage, mais pas pour MediaPlayer?
-
26-09-2019 - |
Question
Ce sera simple pour les gars:
var uri = new Uri("pack://application:,,,/LiftExperiment;component/pics/outside/elevator.jpg");
imageBitmap = new BitmapImage();
imageBitmap.BeginInit();
imageBitmap.UriSource = uri;
imageBitmap.EndInit();
image.Source = imageBitmap;
=> fonctionne parfaitement sur un .jpg avec Action Ancienneté: Contenu Copier vers répertoire de sortie: Copie toujours
MediaPlayer mp = new MediaPlayer();
var uri = new Uri("pack://application:,,,/LiftExperiment;component/sounds/DialingTone.wav");
mp.Open(uri);
mp.Play();
=> ne fonctionne pas sur un .wav avec la même action de construction et de copie à la sortie. Je vois le fichier dans mon / debug / dossier ..
MediaPlayer mp = new MediaPlayer();
var uri = new Uri(@"E:\projects\LiftExp\_solution\LiftExperiment\bin\Debug\sounds\DialingTone.wav");
mp.Open(uri);
mp.Play();
=> Fonctionne parfaitement ..
Alors, comment puis-je obtenir le son au travail avec un chemin relatif? Pourquoi est-il ne fonctionne pas de cette façon? Faites-moi savoir si vous voulez plus de code ou des captures d'écran.
Merci.
La solution
Le pack: // l'application syntaxe URI est pour « embed » fichiers, vérifiez que le fichier média est défini que, ou utilisez le pack. // siteoforigin pour les fichiers « Loose » (copiés dans le répertoire bin)