Dictionary<int, PictureBox> aCollection;
aCollection = new Dictionary<int, PictureBox>();
aCollection.Add(333, new PictureBox
{
Name = "Alcoholism",
Image = Resources.alcoholism,
Size = new Size(22, 22),
SizeMode = PictureBoxSizeMode.StretchImage
});
aCollection.Add(289, new PictureBox
{
Name = "Hypertension",
Image = Resources.hypertension,
Size = new Size(22, 22),
SizeMode = PictureBoxSizeMode.StretchImage
});
PictureBox condition = aCollection[333]; //333 refers to alcoholism
condition.Location = new Point(450, 155);
displayForm.Controls.Add(condition);
PictureBox another = aCollection[289]; //289 refers to hypertension
another.Location = new Point(550, 155);
displayForm.Controls.Add(another);
Код выше делает следующий вывод на Winform (обратите внимание на иконки):Невозможно отобразить тот же PictureBox больше, чем когда-то
Однако, если я включаю как PictureBox
использовать же значок, с надеждой показывая тот же значок дважды т.е.
PictureBox condition = aCollection[289]; //Hypertension
condition.Location = new Point(450, 155);
displayForm.Controls.Add(condition);
PictureBox another = aCollection[289]; //Hypertension
another.Location = new Point(550, 155);
displayForm.Controls.Add(another);
я получаю только один значок OUTP ут.
Может кто-то пожалуйста, сообщите, где я пошло не так? Спасибо.
[Изменить] - Следующий код и производят только один значок
PictureBox condition = aCollection[289];
condition.Location = new Point(450, 155);
displayForm.Controls.Add(condition);
PictureBox another = condition;
another.Location = new Point(550, 155);
displayForm.Controls.Add(another);
как о 'PictureBox еще = состояние;' и остальное будет как есть. –