如何从按钮数组中删除按钮

时间:2014-04-24 12:26:17

标签: c# arrays button

我在Windows窗体中创建了一系列按钮。

Button[] buttons = {button1, button2, button3, button4, button5, button6, button7, button8, button9};

单击一个按钮后,我想将其从阵列中删除。我似乎无法在事件处理程序方法中执行此操作?

void Button1Click(object sender, System.EventArgs e){
    buttonClicked(button1); //no effect on issue at hand

}

3 个答案:

答案 0 :(得分:5)

从数组中删除比e更复杂。 G。来自清单。如果您将Button存储在List<Button>中,则可以执行以下操作:

void Button1Click(object sender, System.EventArgs e)
{
    Button btn = sender as Button;
    buttonList.Remove(btn);
}

答案 1 :(得分:4)

这样的事情可以起作用

void Button1Click(object sender, System.EventArgs e){
    buttonClicked(button1); //no effect on issue at hand
    buttons = buttons.Where(btn => btn != (Button)sender).ToArray();
}

答案 2 :(得分:1)

您可以使用IList而不是Buttons []并使用IList.Remove(itemForRemove)删除项目。