Bild aus einem WebBrowser in einer PictureBox anzeigen lassen



  • Hallo,

    folgende Problemstellung:
    Eine URL wird mit dem WebBrowser Form Element geladen. Danach möchte ich ein Bild in einer PictureBox anzeigen lassen. Dabei sollte es aus dem Cache oder ähnlich kommen und nicht nocheinmal nachgeladen werden.

    Ich habe hier im Forum und in Google nach "Image aus webbrowser in picturebox", "webbrowser image cache" und mehr gesucht, aber habe bis auf eine Lösung die mir nicht gefallen hat (Seite in die Zwischenablage kopieren und daraus dann das Bild), nichts gefunden.

    Für mich ist C# und vorallem .Net neu. Ich weiß auch nicht ob das zu .Net gehört ^^.
    Ich bin da mehr so der trial-and-error Typ.

    Ich muss aufjedenfall die HTML Seite laden und kann nicht einfach auf die direkte Adresse gehen, da ich erst Analysieren muss, um welches Bild es sich handelt (anhand von Tags und IDs). Mit webBrowser1.Document.GetElementById("id") bekomm ich das Element und kann so auch auf das src Attribut zugreifen, aber ich glaube nicht, dass mich das weiter bringt. Es gibt auch noch ein webBrowser1.Document.Images[] aber ich weiß nicht ob ich damit weiter komm, hab aufjedenfall keine Methode gefunden die mir ein Bitmap, einen Pfad oder ähnliches liefert.

    Es muss nicht zwingend mit einem WebBrowser Element sein, ich habe mir gedacht, dass es eventuell auch damit möglich ist:

    WebClient webClient = new WebClient();
    string html = webClient.DownloadString("http://www.google.com");
    

    Dann frage ich gleich an der Stelle, gibt es eine Möglichkeit ein WebBroweser Objekt zu erzeugen ohne es auf einer Form anzeigen zu lassen, aber ich trotzdem auf die Vorzüge der Methoden zugreifen kann. Mir ist klar, dass ich einfach visible=false machen kann, aber ist nicht das was ich suche.

    Ich hoffe irgend jemand kann mir helfen,
    Viele Grüße,
    Samuirai



  • Samuirai schrieb:

    bekomm ich das Element und kann so auch auf das src Attribut zugreifen, aber ich glaube nicht, dass mich das weiter bringt.

    Hört sich aber doch brauchbar an? Wieso sollte das nicht gehen?



  • Ich kann mit der Adresse das Bild zwar anzeigen, aber eben nur indem ich es nocheinmal aus den Internet lade. Da es aber ja schon durch den WebBrowser geladen wurde, möchte ich es nicht nochmal laden. Mit dem HTML Code komm ich da glaub ich nicht weiter, da es ja nichts mit den geladenen Dateien zu tun hat.

    Viele Grüße,
    Samuirai



  • Mit dem WebClient lädts du die Bilder nicht runter.Du kriegst nur das Html.


Anmelden zum Antworten