C# 如何删除我在单击其他按钮时创建的按钮
这是我的代码,它帮助我在单击另一个按钮后创建一个按钮。我需要帮助,这样当我单击另一个按钮时,比方说ButtonRemove,它将删除我创建的最后一个按钮C# 如何删除我在单击其他按钮时创建的按钮,c#,button,C#,Button,这是我的代码,它帮助我在单击另一个按钮后创建一个按钮。我需要帮助,这样当我单击另一个按钮时,比方说ButtonRemove,它将删除我创建的最后一个按钮 private void BtnShto_Click(object sender, EventArgs e) { Button button = new Button(); button.Parent = this.pnlMenu; button.Location = new Point(12 + rreshta, 16
private void BtnShto_Click(object sender, EventArgs e)
{
Button button = new Button();
button.Parent = this.pnlMenu;
button.Location = new Point(12 + rreshta, 16 + kolona);
button.Size = new Size(92, 84);
button.FlatStyle = FlatStyle.Flat;
button.BackColor = Color.White;
button.Text = "Tavolina " + j;
button.Name = "btnTavolina" + j;
j++;
rreshta += 100;
if(rreshta > 500)
{
kolona += 100;
rreshta = 0;
}
}
如果您希望删除最后添加的按钮(然后是之前添加的按钮,依此类推),作为对按钮单击的响应,您需要跟踪已添加的项目。我建议您将pushthenew按钮添加到一个堆栈中,该堆栈在您的click处理程序之外定义,然后在删除时将其弹出 将堆栈添加到表单中
var addedButtons = new Stack<Button>();
在“移除”按钮的“单击”处理程序中,移除项目并处置它们:
if (this.addedButtons.Count > 0)
{
Button toRemove = this.addedButtons.Pop();
this.pnlMenu.Contorls.Remove(toRemove);
toRemove.Dispose();
}
如果您希望删除最后添加的按钮(然后是之前添加的按钮,依此类推),作为对按钮单击的响应,您需要跟踪已添加的项目。我建议您将pushthenew按钮添加到一个堆栈中,该堆栈在您的click处理程序之外定义,然后在删除时将其弹出 将堆栈添加到表单中
var addedButtons = new Stack<Button>();
在“移除”按钮的“单击”处理程序中,移除项目并处置它们:
if (this.addedButtons.Count > 0)
{
Button toRemove = this.addedButtons.Pop();
this.pnlMenu.Contorls.Remove(toRemove);
toRemove.Dispose();
}