Domanda

Ho bisogno di impostare sorgente di immagini in modo dinamico, si prega di notare la mia immagine è in qualche parte sulla rete, ecco il mio codice

BitmapImage logo = new BitmapImage();
logo.BeginInit();
logo.UriSource = new Uri(@"pack://application:,,,\\myserver\\folder1\\Customer Data\\sample.png");
logo.EndInit(); // Getting the exception here
ImageViewer1.Source = logo;

Eccezione:

  

Il prefisso URI non viene riconosciuto

È stato utile?

Soluzione

Hai solo bisogno di una sola riga:

ImageViewer1.Source = new BitmapImage(new Uri(@"\myserver\folder1\Customer Data\sample.png"));

Altri suggerimenti

Nessuna delle soluzioni di cui sopra ha funzionato per me. Ma questo ha fatto:

myImage.Source = new BitmapImage(new Uri(@"/Images/foo.png", UriKind.Relative));

La sintassi pacchetto che si sta utilizzando è qui per un'immagine che è contenuto come risorsa all'interno dell'applicazione, non per un file sciolto nel file system.

Si vuole semplicemente passare il percorso effettivo al UriSource:

logo.UriSource = new Uri(@"\\myserver\folder1\Customer Data\sample.png");

Nessuno dei metodi lavorato per me come ho bisogno di tirare l'immagine da una cartella, invece di aggiungerla alla domanda. Il seguente codice ha funzionato:

 TestImage.Source = GetImage("/Content/Images/test.png")

private static BitmapImage GetImage(string imageUri)
        {
            var bitmapImage = new BitmapImage();
            bitmapImage.BeginInit();
            bitmapImage.UriSource = new Uri("pack://siteoforigin:,,,/" + imageUri,             UriKind.RelativeOrAbsolute);
            bitmapImage.EndInit();
            return bitmapImage;
        } 

Sei tutto sbagliato! Perché? Perché tutto ciò che serve è questo codice di lavoro:

(immagine View) / C # Img è: la tua casella di immagine

Tenetelo così com'è, senza modifiche ( "MS-appx: ///) questo è il codice non è il tuo nome dell'applicazione Immagini è la cartella nel vostro progetto si può cambiare. dog.png è il file nella cartella, così come faccio la mia cartella 'Immagini' e file 'dog.png' Così l'URI è: "ms-appx: ///Images/dog.png" e il mio codice:


private void Button_Click(object sender, RoutedEventArgs e)
    {
         img.Source = new BitmapImage(new Uri("ms-appx:///Images/dog.png"));
    }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top