Почему свойство источника изображения XAML содержит "/ MyApp; компонент"? - PullRequest
13 голосов
/ 21 апреля 2011

Я разрабатываю приложение для Windows Phone.

Я использую изображение, и когда я выбираю изображение с помощью панели свойств, я получаю следующий XAML:

<Image x:Name="GameImage" Margin="8" Source="/MyApp;component/Assets/Icons/GameImage.png"/>

Почему яЯ получаю "/MyApp;component/..."?(Есть ли лучший способ?)

Если я пытаюсь сделать Image.Source="Assets/Icons/GameImage.png", почему это не работает?

Ответы [ 4 ]

39 голосов
/ 21 апреля 2011

Это потому, что для вашего изображения установлено действие по сборке Ресурс (по умолчанию) Если вы переключите его на Content , вы можете установить источник в вашем XAML следующим образом:

<Image x:Name="GameImage" Margin="8" Source="/Assets/Icons/GameImage.png"/>

Чтобы установить его в коде, вы можете сделать это:

BitmapImage tn = new BitmapImage();
tn.SetSource(Application.GetResourceStream(new Uri(@"Assets/Icons/GameImage.png", UriKind.Relative)).Stream);
Image.Source = tn;

Вы должны использовать Контент для повышения производительности. См. Эту статью для более подробной информации: http://www.windowsphonegeek.com/tips/wp7-working-with-images-content-vs-resource-build-action

0 голосов
/ 27 марта 2014

Вы можете использовать:

BitmapImage obj = new BitmapImage();
obj.UriSource = new Uri(mera_image.BaseUri,file.Path);
0 голосов
/ 08 ноября 2013

Не забудьте добавить:

using System.Windows.Media.Imaging;

BitmapImage tn = new BitmapImage();
tn.SetSource(Application.GetResourceStream(new Uri(@"Assets/Icons/GameImage.png", UriKind.Relative)).Stream);
Image.Source = tn;
0 голосов
/ 21 апреля 2011

Любой контент, помеченный как встроенный ресурс, загружается из сборки. Таким образом, сайты использования должны знать, в какой сборке встроен ресурс. В вашем случае это MyApp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...