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();
}
}
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。
TA贡献1789条经验 获得超8个赞
在您的代码中 Label1 是一个私有变量,无法在 labelTextChange 方法中访问。
您需要将 txt1 声明为类变量。
Label txt1;
private void labelCreate()
{
txt1 = new Label();
}
private void labelTextChange()
{
txt1.Text = "Hello World!";
}
- 3 回答
- 0 关注
- 147 浏览
添加回答
举报