Properties.Resources не загружает изображение

У меня есть игровое приложение в Visual Studio 2012 C #. У меня есть все изображения .png, которые я использую в файле ресурсов проекта.

Вы знаете, почему я могу получить доступ ко всем файлам, кроме одного, с помощью Properties.Resources?

Я проверил полный путь к файлу, и он установлен в папку ресурсов. И он добавлен в программу, как я сделал «Добавить» -> «Существующий элемент» и добавил изображение.

Это похоже на другие изображения. Понятия не имею, почему не загружается. Мне это нужно, так как мне нужно отправить .exe по электронной почте моему лектору, а без этого изображения проект - ничто!

введите описание изображения здесь

Я добавил это в файл ресурсов

internal static System.Drawing.Bitmap grid_fw {
            get
            {
                object obj = ResourceManager.GetObject("grid.fw", resourceCulture);
                return ((System.Drawing.Bitmap)(obj));
            }
        }

и хотя теперь сетка доступна, она возвращает null: /


person Bernice    schedule 10.12.2012    source источник
comment
да, вы можете: P с помощью tranZit .. электронная почта работает нормально, но сетка не загружается: /   -  person Bernice    schedule 11.12.2012
comment
ну как вы добавили это изображение в проект? См. msdn.microsoft.com/en-us/library /7k989cfy%28VS.80%29.aspx о том, как их добавить   -  person justderb    schedule 11.12.2012
comment
Я отредактировал ваше название. См. Должны ли вопросы включать «теги» в свои заголовки?, где нет единого мнения, не следует.   -  person John Saunders    schedule 11.12.2012


Ответы (2)



Получить ссылку на изображение можно следующим образом:

Image myImage = Resources.yourImage;

Если вы хотите сделать копию изображения, вам необходимо сделать следующее:

Bitmap bmp = new Bitmap(Resources.yourImage);

Не забудьте утилизировать BMP, когда закончите с ним. Если вы не знаете имя образа ресурса во время компиляции, вы можете использовать диспетчер ресурсов:

ResourceManager rm = Resources.ResourceManager;
Bitmap yourImage = (Bitmap)rm.GetObject("yourImage");

Преимущество ResourceManager заключается в том, что вы можете использовать его там, где Resources.myImage обычно выходит за рамки, или где вы хотите динамически обращаться к ресурсам. Кроме того, это работает для звуков, файлов конфигурации и т. Д.

person MethodMan    schedule 10.12.2012
comment
Спасибо, я пытался получить изображение с помощью ResourceManager, но он вернул значение null, но когда я использовал Resources.myImage, он сделал то, что ожидал. Что может быть причиной возврата ResourceManager null? - person Prokurors; 15.04.2014