Ну, один из простейших методов позволяет сохранить как имя, так и изображение в List<KeyValuePair<string,Image>>
или IDictionary<string,image>
.
Вот пример с использованием IDictionary<string,image>
(я решил для SortedList<>
из-за индексации):
var images = new SortedList<string, Image>();
images.Add("baseball_bat", Properties.Resources.baseball_bat);
images.Add("bracelet", Properties.Resources.bracelet);
...
// when you show the first image...
pictureBox1.Image = images.Values[0];
textBox1.Text = images.Keys[0];
// when you show the nth image...
pictureBox1.Image = images.Values[n];
textBox1.Text = images.Keys[n];
Для List<KeyValuePair<string,Image>>
будет:
var images = new List<KeyValuePair<string, Image>>();
images.Add(new KeyValuePair<string,Image>("baseball_bat", Properties.Resources.baseball_bat));
images.Add(new KeyValuePair<string,Image>("bracelet", Properties.Resources.bracelet));
...
// when you show the first image...
pictureBox1.Image = images[0].Values;
textBox1.Text = images[0].Keys;
// when you show the nth image...
pictureBox1.Image = images[n].Values;
textBox1.Text = images[n].Keys;
Все ли ваши изображения из «Properties.Resources» или это просто пример? – digEmAll
Это небольшой пример. Если есть какие-то альтернативы, я могу попробовать. Я просто пишу имена. – nevra
Как я уже сказал в своем ответе, вы можете сохранить как имя, так и изображение вместе, так что при извлечении одного элемента у вас есть имя и изображение. Но, вероятно, вам следует указать источник изображений, чтобы понять, подходит ли вам такой подход. – digEmAll