Scaricare Dal Web Una Immagine e Visualizzarla su Una PictureBox Windows Forms con C#

Questo piccolo esempio realizzato con C# mostra come è possibile scaricare una immagine dal web.

Image hosted by www.image-share.net

Ovviamente in onore del nostro sito ho "preso" il suo logo (spero vivamente di non avere guai!).

La funzione di scarico dell'immagine:

private Bitmap LoadPicture(string urlImage)

        {

            // per poter dialogare con il web

            HttpWebRequest wreq;

            HttpWebResponse wresp = null;

            // Definizione dello stream per carpire l'immagine

            System.IO.Stream streamImage = null;

            // definizione di un bitmap che costituisce il valore di ritorno

            Bitmap bmpImage = null;

            try

            {

                  // prendiamo contatto con il web

                wreq = (HttpWebRequest)WebRequest.Create(urlImage);

                  // impostiamo la proprietà necessaria per la creazione dello stream

                wreq.AllowWriteStreamBuffering = true;

                        // richiesta dell'immagine

                wresp = (HttpWebResponse)wreq.GetResponse();

                        // in caso di risposta positiva

                if ((streamImage = wresp.GetResponseStream()) != null)

                    bmpImage = (Bitmap) Image.FromStream(streamImage);

            }

            catch (Exception ex)

            {

                  MessageBox.Show(ex.Message + Environment.NewLine + ex.StackTrace);

            }

            finally

            {

                if (streamImage != null)

                    streamImage.Close();

 

                if (wresp != null)

                    wresp.Close();

            }

 

            return (bmpImage);

        }
A questo indirizzo è scaricabile l'esempio preparato con Visual Studio 2005, dovrebbe funzionare anche con Visual C# Express 2005

Print | posted on sabato 3 febbraio 2007 23:39

Feedback

# re: Scaricare Dal Web Una Immagine e Visualizzarla su Una PictureBox Windows Forms con C#

Left by Svetlano at 04/02/2007 20:03
Gravatar Visto che parli di Visual Studio 2005, non si fa prima ad usare:
PictureBox1.ImageLocation = "http://www.visual-basic.it/images/logovbtt.gif" ?
In questo modo hai anche la possibilita' di mostrare un immagine alternativa nel caso la URL non sia raggiungibile (cosa che il tuo esempio non fa)

# re: Scaricare Dal Web Una Immagine e Visualizzarla su Una PictureBox Windows Forms con C#

Left by Luciano Bastianello at 04/02/2007 20:37
Gravatar Si, certo che si fa prima, l'esempio però non era rivolto alla visualizzazione di una immagine dal web (con ilmaglocation si fa prima) ma al meccanismo di "scarico" dell'immagine in uno stream.
Il fatto che poi visualizzi l'immagine scaricata è del tutto funzionale all'esempio.

# re: Scaricare Dal Web Una Immagine e Visualizzarla su Una PictureBox Windows Forms con C#

Left by Svetlano at 04/02/2007 20:55
Gravatar Beh, visto che la tua funzione ritorna un immagine mi pare un po strano come esempio, comunque si fa prima in questo modo:

Public Function LoadPicture(ByVal url As String) As Bitmap
Try
Dim s As Stream = New WebClient().OpenRead(url)
Return TryCast(Image.FromStream(s), Bitmap)
Catch ex As Exception
MessageBox.Show(ex.Message + Environment.NewLine + ex.StackTrace)
End Try
End Function

Se vuoi salvarla su file :-)
My.Computer.Network.DownloadFile("http://www.visual-basic.it/images/logovbtt.gif","c:\logo.gif")

Your comment:





 
Please add 2 and 2 and type the answer here:

Copyright © Luciano Bastianello

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski