Извлечение изображения локального ресурса из формы / кнопки / свойства Winforms - PullRequest
7 голосов
/ 01 февраля 2011

У меня есть приложение Winforms, в котором есть несколько форм с одинаковыми изображениями кнопок на двух основных кнопках для каждой формы (OK и Отмена).Изображения устанавливаются в VS Designer, устанавливая для свойства Image кнопки «Локальный ресурс» и импортируя требуемое изображение.

У меня нет доступа к исходным файлам изображений.Как извлечь изображение из свойства Image элемента управления Button, свойство Image которого было установлено таким образом?

Screenshot

Ответы [ 2 ]

10 голосов
/ 12 ноября 2014

Я нашел гораздо более простой метод, чем ручное декодирование Base64.

Предполагается, что ваша форма называется Form1:

  1. Разверните Form1.cs в обозревателе решений.
  2. Дважды щелкните Form1.resx, чтобы открыть конструктор ресурсов.
  3. Щелкните правой кнопкой мыши изображение, которое вы хотите извлечь.
  4. Выберите «Экспорт в файл ...».

Это относится к ресурсам с постоянством, для которого установлено значение «Внедрено в .resx».Если постоянство «связано во время компиляции», изображение уже существует в виде файла в каталоге ресурсов вашего проекта.

Screenshot

1 голос
/ 29 июля 2011

На самом деле изображения не хранятся в файловой системе, а скорее добавляются в файл resx вашей формы (например, MainForm.resx) в виде сериализованного представления в кодировке base64. Если вы знаете, как это сделать, вы можете выполнить base64-декодирование этой строки, сохранить результат в плоском файле и правильно назвать его (вы должны знать тип изображения для этого).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...