Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在c中使用其他名称创建可见标签_C# - Fatal编程技术网

C# 如何在c中使用其他名称创建可见标签

C# 如何在c中使用其他名称创建可见标签,c#,C#,我有标签和它们的名字像label1,label2,。。。我知道如何使用label1.visible=true这样的可见标签,但我想做的是使用下面的代码这样的其他名称使其中一些标签可见 for (i = 0; i < ceksayisi*2; i++) { num = i; labelname = "label" + num; labelname.v

我有标签和它们的名字像label1,label2,。。。我知道如何使用label1.visible=true这样的可见标签,但我想做的是使用下面的代码这样的其他名称使其中一些标签可见

            for (i = 0; i < ceksayisi*2; i++)
            {
                num = i;
                labelname = "label" + num;
                labelname.visible = true;
            }

代码提供的“string”不包含“visible”的定义,并且找不到接受“string”类型的第一个参数的扩展方法“visible”。是否缺少using指令或程序集引用

你犯了一个典型的错误。您正在寻找的机器人是阵列和其他集合。在一些真正弱类型的langauge之外,不能构建这样的变量名


否.NET语言是弱类型的。这是设计的。

要实现这一点,您应该在这里使用字典

Dictionary<string, Label> keyValuePairs = new Dictionary<string, Label>();
您可以像这样访问标签

Label lbl = keyValuePairs["label" + num];
然后你可以玩这个lbl

lbl.Visible = false;

因为这是一种区分大小写的编程语言,它不能与labelname.visible=true一起工作;但是您必须使用以下代码来更改代码:labelname.Visible=true

编辑:

可能误解了,如果您试图显示/隐藏一个动态不知道名称的标签,您可以尝试执行以下操作:

for(int i = 0; i < ceksayisi*2; i++)
{
    num = i;
    Label labelname = (Label) Controls.Find("label" + num, true).FirstOrDefault();
    labelname.Visible = true;
}

希望这有帮助。

这是ASP.NET?还是c?…如果ASP.NET、LabelPage.FindControllabel+num正常工作,说明您使用的GUI框架非常重要:ASP.NET、Windows窗体、WPF等。如果您使用的是Windows窗体,请检查以下内容:我是否有幸知道我的答案为何被否决?如果你不告诉我我写错了什么,我想我无法提高我的技能。它解决了我的问题
for(int i = 0; i < ceksayisi*2; i++)
{
    num = i;
    Label labelname = (Label) Controls.Find("label" + num, true).FirstOrDefault();
    labelname.Visible = true;
}