Silverlight'ta kod arkasıyla bir görüntüyü dinamik olarak oluşturuyorum ve görüntü kaynağı bir yol olarak bir dizeyi veya Uri'yi kabul etmiyor.Image.Source'ı Silverlight'ta nasıl ayarlıyorsunuz (Kod arkasında)
Kaynağı nasıl ayarlayabilirim?
Silverlight'ta kod arkasıyla bir görüntüyü dinamik olarak oluşturuyorum ve görüntü kaynağı bir yol olarak bir dizeyi veya Uri'yi kabul etmiyor.Image.Source'ı Silverlight'ta nasıl ayarlıyorsunuz (Kod arkasında)
Kaynağı nasıl ayarlayabilirim?
Bir dize kaynak olarak kabul edilmeyeceği anlamına mı geliyor?
Bunu yapamaz mısınız?
Veya görüntünüzün bellekte olduğunu ve nasıl referans göstereceğinizi bilmiyorsunuz?
this.MyImage.Source = new BitmapImage(new Uri("/MyNameSpace;images/someimage.png", UriKind.Relative));
yolundaki ad alanını dahil etmeden çalıştı. Örneği kastettiğim dizeyi kabul etmedim: MyImage.Source = "/MyNameSpace;images/someimage.png", asp.net – Drahcir
ah buna ihtiyaç vardı! – Michel
Projemin "bileşenleri" eklemesi gerekiyor: this.MyImage.Source = new BitmapImage (yeni Uri ("/ MyNameSpace; components/images/someimage.png", UriKind.Relative)); HTTP protokolü için – Raptor
// create a new image
Image image = new Image();
// better to keep this in a global config singleton
string hostName = Application.Current.Host.Source.Host;
if (Application.Current.Host.Source.Port != 80)
hostName += ":" + Application.Current.Host.Source.Port;
// set the image source
image.Source = new BitmapImage(new Uri("http://" + hostName + "/image111.jpg", UriKind.Absolute));
no go gerek yok. sadece yerel kaynak kullanmak iyidir. – Raptor
Ben çözüm iş bulmak için aşağıdaki değiştirmek için gerekli:
this.MyImage.Source = new BitmapImage(new Uri("/MyNameSpace;components/images/someimage.png", UriKind.Relative));
MyNamespace benim için işe yaramadı, ama ExecutingAssemblyName yüzden yaptı:
Dim tmp As String() = Assembly.GetExecutingAssembly.FullName.Split(","c)
Dim path As String = "/" & tmp(0) & ";component/images/"
MyImage.Source = new BitmapImage(new Uri(path & "someImage.png"))
Bu Ben de anlamaya biraz zaman aldı. Guantam'ın cevabı kullandığım gibi görünüyor. – BenMaddox
Biraz olsa değiştirmem gerekiyordu, – Drahcir