То, что вы ищете, это простая глобальная переменная, но в C # их нет. Простая альтернатива - создать класс с именем MyImages (или как угодно), а затем сделать «im» статическим открытым полем, например:
public class MyImages
{
public static Image im = Properties.Resources.green;
}
Затем из любой точки вашего проекта вы можете получить доступ к «im» с помощью кода, подобного следующему:
Image newImage = MyImages.im;
Некоторые программисты могут в ужасе отшатнуться от чего-то подобного и настаивать на «внедрении зависимости» или собственном синглтоне, или делать приватным «im» и создавать открытое свойство get / set, или что-то подобное. Тем не менее, если вам буквально нужно получить доступ к этому изображению из любого места в вашем коде, это простой и эффективный способ сделать это, и он позволяет сохранить код для генерации изображения в одном месте.