C#单击时如何使标签数组中的标签消失?

C#单击时如何使标签数组中的标签消失?,c#,arrays,label,C#,Arrays,Label,我的代码使5个标签随机出现。左边的位置,你可以看到它。 我希望在单击特定标签时它消失,但我不知道如何告诉我的单击无效 public partial class Form1 : Form { public Form1() { InitializeComponent(); } Label [] kubeliai = new Label [5]; int poz = 100; private void Form1_Load(objec

我的代码使5个标签随机出现。左边的位置,你可以看到它。 我希望在单击特定标签时它消失,但我不知道如何告诉我的单击无效

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    Label [] kubeliai = new Label [5];
    int poz = 100;

    private void Form1_Load(object sender, EventArgs e)
    {
        for (int i = 0; i < kubeliai.Length; i++)
        {
            kubeliai[i] = new Label();
            Controls.Add(kubeliai[i]);
            Random pos = new Random();
            kubeliai[i].Top = 50;
            kubeliai[i].Left = poz;
            poz += pos.Next(50, 200);
            kubeliai[i].BackColor = Color.Red;
            kubeliai[i].Height = 20;
            kubeliai[i].Width = 20;
            kubeliai[i].Click += new EventHandler(kubelio_clickas);
        }
    }
    void kubelio_clickas (object sender, EventArgs e)
    {

    }
}
公共部分类表单1:表单
{
公共表格1()
{
初始化组件();
}
标签[]kubeliai=新标签[5];
int-poz=100;
私有void Form1\u加载(对象发送方、事件参数e)
{
for(int i=0;i
对象
发送方
是对触发事件的对象的引用。所以基本上,发送者就是你要寻找的对象

您只需将其设置为不可见:

((Label)sender).Visible = false;

对象
sender
是对触发事件的对象的引用。所以基本上,发送者就是你要寻找的对象

您只需将其设置为不可见:

((Label)sender).Visible = false;
“单击”标签的实例位于
sender
参数中:

 void kubelio_clickas (object sender, EventArgs e)
    {
        Label clickedLabel = sender as Label;
        if (clickedLabel != null) {
           clickedLabel.Visible = false;
        }
    }
因为在.NET
事件处理程序中
默认情况下使用对象作为
发送方
的类型,您必须首先将其强制转换为
标签

单击的标签实例位于
发送方
参数中:

 void kubelio_clickas (object sender, EventArgs e)
    {
        Label clickedLabel = sender as Label;
        if (clickedLabel != null) {
           clickedLabel.Visible = false;
        }
    }
因为在.NET
事件处理程序中
默认使用对象作为
发送者的类型
,所以必须首先将其强制转换为
标签

我希望在单击特定标签时它消失

只需将标签的
.Visible
属性设置为false:

void kubelio_clickas (object sender, EventArgs e)
{
    if (sender is Label)
        ((Label)sender).Visible = false;
}
我希望在单击特定标签时它消失

只需将标签的
.Visible
属性设置为false:

void kubelio_clickas (object sender, EventArgs e)
{
    if (sender is Label)
        ((Label)sender).Visible = false;
}

sender参数是对标签Clicked的引用,
Random pos=new Random()的可能重复项行应该在
for
循环的外部(和之前)。发送方参数是对标签Clicked的引用可能重复
Random pos=new Random()行应该在
for
循环的外部(和之前)。