Kann BitmapImage Event "DownloadCompleted" nicht finden Kann BitmapImage Event "DownloadCompleted" nicht finden
Ergebnis 1 bis 4 von 4
  1. 28.07.2012, 19:19
    #1
    Hallo,
    habe soeben auf der Suche nach einer Lösung für mein Problem folgendes gefunden:

    Code:
    public void SavePhoto(string istrImagePath)
    {
        BitmapImage objImage = new BitmapImage(new Uri(istrImagePath, UriKind.RelativeOrAbsolute));
        objImage.DownloadCompleted += objImage_DownloadCompleted;
    }
    
    private void objImage_DownloadCompleted(object sender, EventArgs e)
    {
        JpegBitmapEncoder encoder = new JpegBitmapEncoder();
        Guid photoID = System.Guid.NewGuid();
        String photolocation = photoID.ToString() + ".jpg";  //file name 
        encoder.Frames.Add(BitmapFrame.Create((BitmapImage)sender));
        using (var filestream = new FileStream(photolocation, FileMode.Create))
        encoder.Save(filestream);
    }
    Ich muss etwas ähnliches machen und zwar:

    In meinem Model ist eine Property die die URL zum Bild bereithält. Wird das Bild von der View benötigt soll dieses in den IsolatedStorage geladen werden und gleichzeitig im View (Image Feld) angezeigt werden. Beim nächsten Aufruf des gleichen Datensatzes soll im Isolated Storage überprüfr werden ob bereits das Bild vorhanden ist und wenn ja dann soll es aus dem IsoStore geladen werden.

    Mir fehlt jetzt das das Event "DownloadCompleted" für "BitmapImage" da ich ja sonst nicht weiss wann ich das ganze mit WriteableBitmap abspeichern kann. Gibt es das Event für Windows Phone nicht? Wenn nein, wie kann man es dann am geschicktesten lösen?

    MfG Johann Löwen
    0
     

  2. Warum solltest du für den Isolated Storage einen asyncronen Aufruf verwenden? Das geht doch direkt viel einfacher
    Mit der kostenlosen PocketPC.ch App von meinem LG-E900 aus geschrieben.
    0
     

  3. Weil man, wenn irgendetwas länger ams 50ms dauert es im Hintergrund ausführen soll, um die GUI nicht zu blockieren.

    Ich würde das so, oder so ähnlich lösen.

    Code:
                WebClient client = new WebClient();
                client.OpenReadCompleted += (s, n) =>
                {
                    var stream = n.Result;
    
                    using (var storage = IsolatedStorageFile.GetUserStoreForApplication())
                    {
                        using (var fileStream = storage.CreateFile("pic.png"))
                        {
                            stream.CopyTo(fileStream); //Bild speichern
                        }
                    }
                };
    
                client.OpenReadAsync(new Uri("http://.../"));
    1
     

  4. 30.07.2012, 08:29
    #4
    Hallo,

    vielen Dank für die schnelle Hilfe.

    MfG Johann Löwen
    0
     

Ähnliche Themen

  1. Antworten: 8
    Letzter Beitrag: 28.01.2011, 10:13
  2. Antworten: 1
    Letzter Beitrag: 09.01.2011, 18:42
  3. Antworten: 2
    Letzter Beitrag: 08.10.2010, 19:28
  4. Ich kann die "InternetPortal-de-de.xml" nicht finden ?!
    Von JB-Delta im Forum HTC Touch Diamond 2
    Antworten: 3
    Letzter Beitrag: 30.06.2009, 23:05
  5. "Die Datei "autorun" kann nicht geöffnet werden."
    Von mahe im Forum HTC Touch Dual
    Antworten: 7
    Letzter Beitrag: 24.06.2008, 20:13

Besucher haben diese Seite mit folgenden Suchbegriffen gefunden:

downloadcompleted bitmapimage

windows phone download finished event

bitmapsource.downloadcompleted

bitmapimage download completed

save bitmapimage downloadcompleted

bitmapimage downloadcompleted event

BitmapImage DownloadCompleted

Stichworte