#c# #winforms
#c# #winforms
Вопрос:
Я пытаюсь установить изображение графического поля, которое я создал динамически, я устанавливаю изображение на основе тега родительского элемента управления, но изображение не отображается
Что я пробовал до сих пор
private void FinishTask_click(object sender, EventArgs e)
{
string pnlTag = ((PictureBox)sender).Parent.Tag.ToString();
PictureBox pb = new PictureBox();
pb.Tag = pnlTag;
foreach (Control c in flpParent.Controls)
{
if (c.Tag == pb.Tag)
{
pb.Image = Properties.Resources.complete;
}
}
}
Комментарии:
1. Это довольно сложный метод для назначения растрового изображения (которое вы не должны получать из подобных ресурсов). Ваш
pb
объект никогда не добавляется ни в один контейнер.2. Одна из причин, по которой изображение не отображается, заключается в том, что вы выбрасываете
pb
его в конце этой процедуры. Вы не показываетесьpb
в своей форме и, следовательноpb.Image
, не показываетесь. Есть ли ошибка ввода в вашем коде?3. @HaraldCoppoolse Нет, окно с изображением создается динамически, поэтому я пытаюсь ссылаться на picturebox с определенным тегом, но он не отображается
4. Просто, как я уже сказал: в конце процедуры вы удаляете PictureBox. Если вы хотите отобразить его в элементе управления, вы должны добавить его в этот элемент управления, например, в форму или в UserControl, GroupBox или любой другой ContainerControl