-1

所以,我想要做的是遍历一个 x 值数组,并且对于每次迭代,获取标签“plabel”+ x 的当前文本值(标签都已经创建和命名。我对使用比较陌生反思,但从我读过的内容来看,以下内容应该有效:

PropertyInfo pI;
pI = this.GetType().GetProperty("plabel" + count + ".Text"); //count is the current iteration #
MessageBox.Show(pI.Name);

但这会引发运行时异常。有人可以告诉我这样做的正确方法吗?

4

1 回答 1

2

尝试这样的事情:

//Gets the label (includes private fields)
FieldInfo fi = this.GetType().GetField("plabel" + count, 
                   BindingFlags.NonPublic | BindingFlags.Instance); 

Label label = fi.GetValue(this) as Label;

if (label != null)
{
    MessageBox.Show(label.Text);
}
于 2012-10-26T19:24:13.133 回答