Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/141: Рейтинг темы: голосов - 141, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 5
1

Программная загрузка изображения из ресурсов в Image WPF

28.05.2015, 09:47. Показов 28072. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет, знакомлюсь с C#, начал с WPF, пытаюсь программно загрузить картинку в Image, изображение является внедренным ресурсом, уже несколько дней не могу нагуглить код, который получал бы путь к файлу в ресурсах, нашел только что-то вроде
C#
1
WpfApplication1.Properties.Resources.green
, но Uri требует соурс типа string, а не сам ресурс, если указывать абсолютный путь к файлу, то все нормально:
C#
1
2
3
4
5
6
7
8
        
            BitmapImage myBitmapImage1 = new BitmapImage();
 
            myBitmapImage1.BeginInit();
            myBitmapImage1.UriSource = new Uri(@"D:\csharp\WpfApplication1\WpfApplication1\Resources\green.png", UriKind.Absolute);
            myBitmapImage1.EndInit();
 
            Image1.Source = myBitmapImage1;
а вот каким образом правильно указать ссылку на файл в ресурсах я не знаю, пробовал "Resources\green.png", но не проходит, уже несколько дней мучаюсь, прошу помощи у опытных)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2015, 09:47
Ответы с готовыми решениями:

Загрузка изображения из ресурсов в Image WPF
Ну никак не получается загрузить изображения из ресурса, всегда ошибка. Уже все что нашел в...

Загрузка изображения в Image с сохранении соотношения сторон изображения
загрузка изображения в Image(с фиксированным размером) при этом изображение должно сохранить...

Загрузка изображения bmp из ресурсов
господа я поднимал конечно уже тему,заранее прошу прощение за нарушение правил,но там было не...

Загрузка изображения в Image
C помощью OpenDialog пытаюсь загрузить изображение в Image но выдаёт ошибку Unknow picture file...

6
61 / 61 / 32
Регистрация: 30.07.2013
Сообщений: 178
28.05.2015, 11:05 2
У меня получилось вот так:
C#
1
this.image1.Source = new BitmapImage(new Uri("/Resources/00223.jpg", UriKind.Relative)) { CreateOptions = BitmapCreateOptions.IgnoreImageCache };
А вообще google выдаёт довольно таки много информации по запросу "добавление рисунка в image wpf".
0
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 5
28.05.2015, 12:16  [ТС] 3
Adadjio, гугл действительно выдает много информации, я ее изучал в течении нескольких дней, но ответа на свой вопрос не нашел, а по поводу
Цитата Сообщение от Adadjio Посмотреть сообщение
У меня получилось вот так:
- у меня не получилось, изображение не выводится, хотя если указать путь в конструкторе, то изображение сразу же выводится (т.е. относительный путь верный), но при запуске изображения все равно нет

Программная загрузка изображения из ресурсов в Image WPF

Я уже вообще ничего не понимаю

На скрине рядом с формой конструктора запущенное приложение
0
61 / 61 / 32
Регистрация: 30.07.2013
Сообщений: 178
28.05.2015, 13:55 4
Лучший ответ Сообщение было отмечено Ох_тыж как решение

Решение

Ох_тыж, в "Обозревателе решения" - в папке "Resources" - для каждого файла - в свойствах "Действие при построении" выберите "Resource" и тогда
C#
1
this.image1.Source = new BitmapImage(new Uri("/Resources/00223.jpg", UriKind.Relative)) { CreateOptions = BitmapCreateOptions.IgnoreImageCache };
должно заработать точно.
Или можете посмотреть тут
2
Эксперт .NET
17688 / 12873 / 3366
Регистрация: 17.09.2011
Сообщений: 21,138
28.05.2015, 14:07 5
Цитата Сообщение от Ох_тыж Посмотреть сообщение
изображение является внедренным ресурсом
Зачем?

Пометьте его просто как Resource, у WPF свой механизм ресурсов — его и используйте.
XML
1
2
3
4
5
6
7
<Window.Resources>
   <ResourceDictionary>
      <BitmapImage x:Key="green" UriSource="/Resources/green.png"/>
   </ResourceDictionary>
 
   <Grid>
      <Image Source={StaticResource green}/>
1
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 5
28.05.2015, 18:30  [ТС] 6
Adadjio, да, все сработало, спасибо) магия какая-то
0
5 / 8 / 4
Регистрация: 31.08.2013
Сообщений: 349
05.09.2017, 23:32 7
Вопрос: почему, если я делаю так, то картинка появляется
C#
1
img01.Source= new BitmapImage(new Uri("/Resources/part6.jpg", UriKind.Relative)) { CreateOptions = BitmapCreateOptions.IgnoreImageCache };
а если делаю так, то нет:
C#
1
2
string path = Directory.GetCurrentDirectory();
img02.Source = new BitmapImage(new Uri(path + "/img/001_01.jpg", UriKind.Relative)) { CreateOptions = BitmapCreateOptions.IgnoreImageCache };
при этом свойства файла выставлены правильно (контент и копирование) папка с файлом создаются при компиляции.
смотрел в переменной img02.Source - путь правильный, а картинки на форме нет
---
Разобрался:
Нужно вместо UriKind.Relative ставить UriKind.Absolute
0
05.09.2017, 23:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.09.2017, 23:32
Помогаю со студенческими работами здесь

Загрузка изображения в Image
Доброго времени суток. Имеется несколько около сотни изображений, в зависимости от того или...

Загрузка изображения в компоненту Image
Вообщем, я должен загрузить изображение, однако их много и для соответствия нужно загружать...

Загрузка изображения в image (idHTTP)
Здравствуйте! Пытаюсь загрузить изображение с сайта в Timage, код компилируется без ошибок...

Очистка image и загрузка png изображения
Столкнулся с небольшой проблемкой. Есть программа, которая должна выводить на форму изображения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru