Как установить Image.Source в Silverlight (код позади) - PullRequest
30 голосов
/ 23 февраля 2009

Я динамически генерирую изображение с помощью кода в Silverlight и, очевидно, источник изображения не принимает строку или Uri в качестве пути.

Как установить источник?

Ответы [ 3 ]

54 голосов
/ 23 февраля 2009

Как вы имеете в виду, что он не будет принимать строку в качестве источника?

Вы не можете это сделать?

Или вы говорите, что ваше изображение находится в памяти, и вы не знаете, как на него ссылаться?

this.MyImage.Source = new BitmapImage(new Uri("/MyNameSpace;images/someimage.png", UriKind.Relative));
6 голосов
/ 04 октября 2010
// 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));  
1 голос
/ 14 февраля 2012

Мне нужно было заменить следующее, чтобы получить решение:

this.MyImage.Source = new BitmapImage(new Uri("/MyNameSpace;components/images/someimage.png", UriKind.Relative));

MyNameSpace у меня не сработало, но ExecutingAssemblyName сработало, поэтому:

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"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...