0
아래 코드가 있습니다. 여기에 버튼 클릭시 동적으로 2 개의 텍스트 상자와 버튼이 추가됩니다. 동적으로 생성 된 버튼에 텍스트 상자를 태그 지정합니다 (제거). 그래서 제거 단추를 클릭하면 그것에 텍스트 상자를 제거해야합니다. 그러나 단 하나의 텍스트 상자가 제거되고 다른 텍스트 상자는 제거되지 않습니다. tat에 대한 이유를 찾을 수 없습니다.동적으로 추가 할 때 버튼에 태그가 지정된 텍스트 상자 삭제
private void button1_Click(object sender, EventArgs e)
{
int c=0;
int v;
v = c++;
panel1.VerticalScroll.Value = VerticalScroll.Minimum;
Button btn = new Button();
btn.Name = "btn" + v;
btn.Text = "Remove";
btn.Location = new Point(370, 5 + (30 * v));
btn.Click += new EventHandler(btn_Click);
TextBox txt = new TextBox();
txt.Name = "TextBox" + v;
txt.Location = new Point(30, 5 + (30 * v));
txt.Tag = btn;
TextBox txt1 = new TextBox();
txt1.Name = "TextBox2" + v;
txt1.Location = new Point(170, 5 + (30 * v));
txt1.Tag = btn;
panel1.Controls.Add(txt);
panel1.Controls.Add(txt1);
panel1.Controls.Add(btn);
}
private void btn_Click(object sender, EventArgs e)
{
//to remove control by Name
foreach (Control item in panel1.Controls.OfType<Control>())
{
if (item.Tag == sender || item == sender)
panel1.Controls.Remove(item);
}
}
질문 제목에 사용 된 언어에 대한 정보가 없으면 이해할 수없는 경우를 제외하고는 질문 제목에 사용 된 언어에 대한 정보를 포함하지 마십시오. 태그는 이러한 용도로 사용됩니다. –