Что такое правильное действие сборки для файлов изображений Windows Phone 7? - PullRequest
6 голосов
/ 03 сентября 2010

Я работал над приложением для Windows Phone 7, и после небольшого поиска в Google кажется, что для изображений, которые я добавил в проект Visual Studio, мне нужно установить для действия сборки значение «Содержимое», чтобы быть в состоянии ссылаться на изображения в моем приложении.

Однако шаблон проекта приложения Windows Phone List включает изображение (ArrowImg.png), в котором для параметра «Действие сборки» установлено значение «Ресурс», и на которое все еще можно ссылаться из приложения.

Мне было интересно, может ли кто-нибудь подтвердить, что мы определенно должны использовать действие по построению контента, или есть ли какой-то способ доступа к изображениям, добавленным в проект с помощью действия по созданию ресурса, как показано в примере проекта, что нам и следует вместо этого?

Ответы [ 2 ]

10 голосов
/ 03 сентября 2010

Если вы установите действие «Содержимое», изображение будет включено «как есть» в XAP.Если вы установите действие «Ресурс», изображение будет встроено в общую DLL.

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

Для чего это стоит, если только мне не нужно специально сделать это ресурсом,Я использую контент.

С текущими (бета) инструментами я видел, как VS жалуется, что для изображений, на которые есть прямые ссылки в XAML, должно быть установлено значение «Ресурс» (если установлено значение «Содержимое»), но приложение отлично работает сили.Надеемся, что это проблема, которая будет решена в инструментах RTM.

Для получения дополнительной информации см. Обсуждение в Каковы различные настройки «Build action» в свойствах проекта Visual Studio и что они делают?

3 голосов
/ 31 октября 2010

Любое действие сборки правильное.

Стоит также обратить внимание при решении проблем, связанных с действием сборки, используемым вами путем.

Я видел, как немногие сталкивались с этой проблемой, потому что они предполагали, что они неправильно установили свои действия по сборке.

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

Дополнительная информация по теме из этого поста.

Установить источник изображения в C #

Вы можете сравнить контент с ленивым загрузка версии ресурсов.

Разница в том, что вы понесете снижение производительности всех ресурсов, когда сборки загружаются для запуска ваше приложение.

Содержание, с другой стороны, снижение производительности откладывается до Вы используете это.

Что больше подходит, будет зависеть от от случая к случаю.

Обратите внимание, что путь к справочные ресурсы и контент отличается, как можно видеть здесь.

  //Uri uri = new Uri("/Resources/Images/MyImage.jpg", UriKind.Relative); // Content 
  Uri uri = new Uri("/PhoneApp;component/Resources/Images/MyImage.jpg", UriKind.Relative); // Resource 
  BitmapImage imgSource = new BitmapImage(uri);
  image1.Source = imgSource;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...