2014-09-24 7 views
1

I'have этот пакет на моем проекте:Как получить изображение из ресурсов проекта

ProjectName: Gestore

--- Вид (Папка)

------ ресурсов (папок)

--------- изображений (Папка)

------------ immagine1.png

--- DatiAnagraficiPageView.xaml

Теперь я хотел бы создать программно изображение, поэтому я пытаюсь написать этот код, но он не найден. Код:

System.Windows.Controls.Image img = new System.Windows.Controls.Image(); 
img.Source = new BitmapImage(new Uri(Directory.GetCurrentDirectory() + @"\Resources\Images\immagine1.png")); 

У меня есть исключение, потому что элемент управления не находит изображение.

Можем ли мы мне помочь?

Я думаю, что ошибка в коде "Directory.GetCurrentDirectory()"

+0

Что 'Directory.GetCurrentDirectory()' вернуть? – Sheridan

+0

Он возвращает «C: \\ Users \\ michele.castriotta \\ Source \\ Workspaces \\ Omniacare \\ программное обеспечение \\ платформа упражнений \\ Gestore \\ Gestore \\ bin \\ Debug" – bircastri

+0

Это возвращает путь к 'bin' каталог ... не очень полезен в этом случае. См. [URI URI в WPF] (http://msdn.microsoft.com/en-us/library/aa970069 (v = vs.110) .aspx) в MSDN. – Sheridan

ответ

3

Предполагая, что immagine1.png это ресурс, который вы должны использовать Pack URI, что-то вроде

new Uri("pack://application:,,,/Gestore;component/View/Resources/Images/immagine1.png") 
+1

Спасибо. Оно работает. – bircastri

0

попробовать

System.Windows.Controls.Image img = new System.Windows.Controls.Image(); 
BitmapImage bm = new BitmapImage(new Uri("@View/Resources/Images/immagine1.png", UriKind.RelativeOrAbsolute)); 
      img.Source = bm;