为了账号安全,请及时绑定邮箱和手机立即绑定

更改在 C# 中以编程方式创建的标签的文本?

更改在 C# 中以编程方式创建的标签的文本?

C#
明月笑刀无情 2021-11-14 14:33:10
txt1当应用程序运行时(在运行时),我在私有 void 中以编程方式创建了一个标签,我想在另一个私有 void 中更改此标签的文本,但我无法txt1从另一个 void访问!用于动态创建标签的脚本:private void labelCreate() {Label txt1 = new Label();}用于更改txt1已在labelCreatevoid 中创建的文本的脚本(& 此脚本不起作用,因为txt1尚未声明为控件):private void labelTextChange(){txt1.Text = "Hello World!";}更新 1:我需要创建 100 个具有不同名称的标签,然后我将使用一个for语句来创建 100 个标签。我不能声明 100 个全局变量。所以我需要传递变量而不是将它们声明为全局变量。更新 2:是否可以将for语句中的100 个标签声明为全局?更新 3:假设我想从数据库中获取一些数据,我想在唯一标签中分别显示它们。因此,我为每个标签命名并根据从数据库获得的不同数据更改它们的文本!所以我需要 2 个空白:一个用于根据我从 DB 获得的行数创建标签,另一个用于更改我之前创建的标签文本!问题:如何访问在不同空间中创建的控件?如果有答案,请分享链接:)
查看完整描述

3 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

Label在您的班级中全局声明


Label txt1;

private void labelCreate() 

{

  txt1 = new Label();

}

比用另一种方法访问


private void labelTextChange()

{

 txt1.Text = "Hello World!";

}

编辑 1


如果您有多个标签,则在创建标签时,您可以将这些对象存储在一个数组中,当您需要更改这些文本时,请执行以下操作


Label[] labelsArray //declare globally

private void labelTextChange()

{

    // Get Label objects from array

    labelsArray = { label1, label2, label3, label4, label5 };

    for (int i = 0; i < labelsArray.Count(); i++)

    {

        labelsArray[i].Text = "Hello.. " + (i + 1).ToString();

    }

}


查看完整回答
反对 回复 2021-11-14
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

如果您有动态数量的标签,则可以使用列表。


List<Label> labels;


private void labelCreate() 

{

    labels = new List<Label>(); 

    for(int i = 0; i < 100; i++)

    {

        labels.Add(new Label());

    }   

}


private void labelTextChange()

{   

    // use the index or search for the name of the label

    labels[42].Text = "Hello World!";

}

以下是一些有关变量生命周期及其可访问性(可以从中读取和/或写入变量的位置)的信息,您可以找到 helpflul。


查看完整回答
反对 回复 2021-11-14
?
拉丁的传说

TA贡献1789条经验 获得超8个赞

在您的代码中 Label1 是一个私有变量,无法在 labelTextChange 方法中访问。


您需要将 txt1 声明为类变量。


Label txt1;


 private void labelCreate() 

    {

    txt1 = new Label();

    }


    private void labelTextChange()

    {

    txt1.Text = "Hello World!";

    }


查看完整回答
反对 回复 2021-11-14
  • 3 回答
  • 0 关注
  • 147 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信