Silverlight 2.0 Beta 2 içerisinde dinamik resim yüklemek

0 dakikada yazıldı

6699 defa okundu

Düzenle

Silverlight 2.0 Beta 2 ile beraber gelen değişikliklerden biri de
dinamik olarak Image nesneleri yaratmak ve bu nesnelere farklı resimler
yüklemekle ilgili. Eskiden Beta 1 içerisinde sadece Source
özelliğini değiştirerek resimleri dinamik olarak yükleyebiliyorken artık
biraz daha uğraşmamız gerekiyor.

İlk olarak yeni bir Silverlight 2.0 Beta 2 projesi yaratarak projemize
kullanacağımız resimleri ekleyelim. Sonrasında dinamik olarak bir
Image nesnesi yaratıp içerisini ImageSource ile dolduruyoruz.

[VB]

Dim Foto As New
Image

Dim Adres As New
Uri("garden.jpg", UriKind.Relative)

Dim FotoKaynak As ImageSource = New
System.Windows.Media.Imaging.BitmapImage(Adres)

Foto.SetValue(Image.SourceProperty, FotoKaynak)

Me.LayoutRoot.Children.Add(Foto)

[C#]

Image Foto = new Image();

Uri Adres = new Uri("garden.jpg", UriKind.Relative);

ImageSource FotoKaynak = new System.Windows.Media.Imaging.BitmapImage(Adres);

Foto.SetValue(Image.SourceProperty,
FotoKaynak);

this.LayoutRoot.Children.Add(Foto);

Yukarıdaki kodumuzun ilk satırında yarattığım Silverlight Image
nesnesini doldurmak için bir ImageSource'a ihtiyacımız var. Bunun için
ilk olarak yükleyeceğimiz resim adresini Uri tipinde yaratıyoruz.
Relative konumlandırma ile doğrudan uygulamanın içerisindeki resim
dosyasını kullanacağız. Sonrasında elimizdeki Uri'den bir
ImageSource yaratıyoruz ve bu ImageSource'u da Image nesnemizin
SourcePropoerty'sine atıyoruz. Tüm bu işlemler tamamlandıktan sonra
tabi ki eldeki Image Silverlight nesnesini de sahneye eklememiz lazım.

Peki ya proje harici bir resmi yüklemek istersek?

Harici resmin bulunduğu internet adresi üzerinden bir Uri yaratarak
yukarıdaki kodun aynısını kullanabilirsiniz. Böylece uygulamanız söz
konusu adresteki fotoğrafı yükleyecektir.

[VB]

Dim Adres As New
Uri("www.alanadi.com/resim.jpg",
UriKind.Absolute)

[C#]

Uri Adres = new Uri("www.alanadi.com/resim.jpg", UriKind.Absolute);

Hepinize kolay gelsin.