170 похожих чатов

Есть ли кто-то кто разбирается в формах ? Есть следующий

код.


private void CharacterAdder(List<Character> characters)
{
foreach (var character in characters)
{
Panel panel = new Panel
{
Width = 300,
Height = 300
};
PictureBox pictureBox = new PictureBox
{
Width = 250,
Height = 250,
SizeMode = PictureBoxSizeMode.StretchImage,
};

Label label = new Label
{
Text = character.Name,
Font = new Font(FontFamily.GenericMonospace, 20)
};

pictureBox.Load(character.ImageUrl);
panel.Controls.Add(label);
panel.Controls.Add(pictureBox);

pictureBox.Click += characterPanel_Click;

flowLayoutPanel1.Controls.Add(panel);
}
}

private void characterPanel_Click(object sender, EventArgs e)
{
MessageBox.Show("Test");
this.Visible = false;
Form2 form2 = new Form2("hello");
form2.FormClosed += new FormClosedEventHandler(otherForm_FormClosed);
form2.Show();
}


Нужно чтобы по клику на пикчур бокс, вызывалось другое окно. И с этим пока справился.
Проблема состоит в том, как передать методу characterPanel_Click() текст
Text = character.Name
И желательно самому конструктору второй формы вместо «hello»
Этого динамиески сгенереного контрола ?

2 ответов

23 просмотра

У PictureBox, как и любого контрола, есть свойство Tag, в него можно передать любые данные для контрола, в твоем случае строку character.Name. В методе characterPanel_Click в sender лежит PictureBox, оттуда этот Tag забираешь

Антон-😇 Автор вопроса

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта