Seiten

Mittwoch, 19. Oktober 2011

Windows Phone 7 - Image Source im Codebehind zuweisen

Das Silverlight-Control Image dient als Container für ein anzuzeigendes Bild. Im XAML kann ich das Bild zum Beispiel so referenzieren:

<Image Source="NoConnect.jpg" x:Name="ImageIPCam1"/>
<Image Source="http://www.it4zwigge.de/icons/ipcam1.jpg" x:Name="ImageIPCam2"/>

Im Codebehind lässt sich allerdings nicht so einfach einen String zuweisen. Der Versuch...

ImageIPCam2.Source = "http://www.it4zwigge.de/icons/ipcam2.jpg";

... schlägt fehl, weil als Source kein String sondern ein ImageSource-Objekt (Bitmap) verlangt wird.

Eine kleine Funktion schafft hier Abhilfe:

    private BitmapImage String2Bmp(String source)
    {
      Uri uri = new Uri(source, UriKind.RelativeOrAbsolute);
      BitmapImage bmp = new BitmapImage(uri);
      
      return bmp;
    }

Die man z.B. so aufrufen kann:

ImageIPCam2.Source = String2Bmp("http://it4zwigge.de/icons/ipcam2.jpg");

Keine Kommentare:

Kommentar veröffentlichen