我有列表,其中有6个句子,我想要放在6个不同的标签中。 所有六个标签被命名为Slot0Sentence,Slot1Sentence,Slot2Sentence ...如何从循环访问标签并更改其文本
我这是怎么循环
for (int i = 0; i < ls.Count; i++)
{
Slot0Sentence.Text = ls[i];
}
但是我不知道如何访问其他标签。 如果会有正常的字符串,我会做槽+我+句子,但在这种情况下,这不工作。
我有列表,其中有6个句子,我想要放在6个不同的标签中。 所有六个标签被命名为Slot0Sentence,Slot1Sentence,Slot2Sentence ...如何从循环访问标签并更改其文本
我这是怎么循环
for (int i = 0; i < ls.Count; i++)
{
Slot0Sentence.Text = ls[i];
}
但是我不知道如何访问其他标签。 如果会有正常的字符串,我会做槽+我+句子,但在这种情况下,这不工作。
带有一组标签可以控制它们的属性。你不需要在这里设计,你可以用代码来做到这一点。
Label[] l = new Label[6];
int x = 20;
for (int i = 0; i < l.Length; i++)
{
l[i] = new Label();
l[i].Name = "Hello " + i.ToString();
l[i].Text = "Hello " + i.ToString();
l[i].Location = new Point(x, 10);
x += 100;
}
您可以将名称和文本更改为任何你喜欢的。
我只是使用父容器(Grid,StackPanel,..)的Children
属性。这给你一个支持索引的集合。此外,如果您有不同的控件,请使用if语句
if(element in Label)
{
element.Text = ...
}
把它们放在一个* Label *数组中......'var labels = new Label [] {Slot0Sentence,Slot1Sentence,Slot2Sentence,...};' – 2014-09-27 18:56:52
谢谢!我只是开始在C#编码,所以不知道阵列。 – Edgar 2014-09-27 19:05:22
除非'array',使用'List