Я хотел бы знать следующее: Я добавил папку "Graphics" в свой проект и засунул BMP в него. Теперь я хотел бы загрузить изображение из своего кода, но я не могу выяснить как. Я знаю его простое с ресурсами, но есть ли путь, не добавляя изображение в ресурсы?Спасибо
Однажды я тоже задавался этим вопросом, поэтому я выяснил его и изложил в сообщении в блоге. Для вашего примера это должно выглядеть примерно так:
var a = Assembly.GetExecutingAssembly(); // Or another Get method if you need to get it from some other assembly
var image = Image
.FromStream(a.GetManifestResourceStream("DefaultNameSpace.Graphics.image.bmp"));
Не забудьте пометить изображение как Embedded Resource и утилизировать его после завершения работы, чтобы не было утечки :)
.Чтобы получить ресурс:
myNamespace.Properties.Resources.images.<imagename>
Вы можете привести его к нужному типу (или использовать функцию, например FromFile )
В свойствах файла следует указать, что он должен быть развернут при построении приложения :
Копировать в выходной каталог : Копировать всегда
Затем вы можете получить доступ к файлу с помощью метода Image.FromFile, путь будет точно таким же, как и в вашем проекте.
Вы можете загрузить изображение прямо из файловой системы
Image img = Image.FromFile ("\ Graphics \ ImageName.bmp");
Документация MSDN находится здесь
http://msdn.microsoft.com/en-us/library/system.drawing.image.fromfile.aspx
Очевидно, вам нужно знать каталог и имя, из которого вы загружаете.