wpf Графические ресурсы и редактор ресурсов Visual Studio 2010
Моя мотивация для этого вопроса на самом деле просто указать изображение, которое будет использоваться в пользовательском элементе управления через свойство зависимости для ImageSource. Я бью некоторые болевые точки, связанные с управлением, доступом и модульным тестированием для этого.
- Является ли редактор ресурсов хорошим инструментом для поддержки изображений для приложения?
- Каков наилучший способ перевода растрового изображения из редактора в ImageSource?
- Как я могу получить ресурс Filename из редактора?
1 ответ
Нет, редактор ресурсов не является хорошим инструментом для этого.
В приложении WPF лучший способ - поместить все ваши изображения в каталог "Изображения" и пометить каждое из них как "Ресурс". Затем вы можете ссылаться на них непосредственно в элементах управления изображения и в других местах.
Вот точные шаги:
- Обрезайте и иным образом корректируйте изображения с помощью любимой программы редактирования растровых изображений (Paint.NET, Photoshop и т. Д.)
- Сохраните их как файлы.png (или.jpg или.gif, если хотите)
- Создайте папку "Изображения" внутри своего решения Visual Studio (или нескольких папок, однако вы хотите организовать их)
- Перетащите изображения с жесткого диска в папку "Изображения" (или щелкните проект правой кнопкой мыши, выберите "Создать" -> "Существующий элемент" и выберите изображения).
Теперь вы можете легко ссылаться на свои изображения в XAML:
<Image Source="Images/MyImage.png" />
Или в коде:
var source = (BitmapSource)Application.LoadComponent(
new Uri("Images/MyImage.png", UriKind.Relative));
Вы также можете ссылаться на изображения во внешних сборках:
<Image Source="ReferencedAssembly;v1.0.0.1;component/Images/MyImage.png" />
Который в коде будет:
var source = (BitmapSource)Application.LoadComponent(
new Uri("ReferencedAssembly;v1.0.0.1;component/Images/MyImage.png",
UriKind.Relative));