Название ресурса программно

Хочу менять PictureBox.Image на рисунок из Properties.Resources, но не хочу делать вот так:

Image temp = null;
                imgMain.Image = Properties.Resources._1;
                switch (treeView1.SelectedNode.Index)
                {
                    case 0: temp = Properties.Resources._1; break;
                    case 1: temp = Properties.Resources._2; break;
                    case 2: temp = Properties.Resources._3; break;
                    case 3: temp = Properties.Resources._4; break;
                    case 4: temp = Properties.Resources._5; break;
                    case 5: temp = Properties.Resources._6; break;
                    default:break;
                }
                imgMain.Image = temp;

А например так:

imgMain.Image = Properties.Resources + treeView1.SelectedNode.Index.toString();

Но так не получается, поможете? Делал это с RichTextBox, все работало. А вот с PictureBox проблемы.


Ответы (1 шт):

Автор решения: Andrew

на примере ресурса-строки:

string st = Properties.Resources.ResourceManager.GetString("стринговоеИмя");

подсказал гугл по запросу "Properties.Resources from string"

С картинкой должно сработат что-то вроде:

var a = Properties.Resources.ResourceManager.GetObject("стринговоеИмя") as Image;
var b = Properties.Resources.ResourceManager.GetObject("стринговоеИмя") as Bitmap;

или

var c = (Image) Properties.Resources.ResourceManager.GetObject("стринговоеИмя");
var d = (Bitmap) Properties.Resources.ResourceManager.GetObject("стринговоеИмя");
→ Ссылка