2

Я пытаюсь загрузить изображение из XAML в проекте WP8. Изображение находится в другой сборке, которая представляет собой переносимую библиотеку классов. Я использую это для загрузки изображения:Загрузить изображения из PCL в XAML

<ImageBrush ImageSource="/PortableClassLibrary1;component/Assets/Images/Background.jpg" /> 

но изображение не загружено. Можно ли загрузить его?

+1

Я могу подтвердить ошибку. Это озадачивает, надеюсь, вы сможете это понять. –

+0

Я пробовал даже с библиотекой классов Windows-телефона, и он не загружает изображения, хотя дизайнер показывает изображение правильно. – Specter

ответ

2

Это не возможно в общем, вы пытаетесь получить доступ к изображению внутри PCL, используя Uri, отформатированный как Windows Phone one.

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

Вы можете перемещать изображения в проект WP. Во всяком случае, нет смысла использовать их в приложении W8. Вам нужны изображения с высоким разрешением и т. Д.

В PCL есть хорошая статья о ресурсах. http://msdn.microsoft.com/en-us/library/hh871422.aspx

Основная идея - вы можете хранить только resorces строки на основе внутри:

Исключение других ResourceManager членов от портативного класса библиотеки означает, что сериализованные объекты, не строковые данные, и изображения не могут быть получены из файла ресурсов. Вы можете работать вокруг этого ограничения, сохраняя данные объекта в строковой форме. Например, для вы можете хранить числовые значения в файле ресурсов путем преобразования их в строки, и вы можете их восстановить, а затем преобразовать их обратно в номера с помощью метода анализа или типа TryingSize. Вы можете преобразовать изображения или другие двоичные данные в строковое представление , вызвав метод Convert.ToBase64String и восстановить их в массив байтов , вызвав метод Convert.FromBase64String.

p.s. Here, вы можете найти длинную тему об этом. Есть несколько «решений», но я бы предпочел хранить изображения в сборках на платформе, если это возможно.

Смежные вопросы