在标签名称中使用变量

本文关键字:变量 标签名 | 更新日期: 2023-09-27 18:25:04

可以做这样的事情吗?

var test = 1;
label+test+.Text = "Some text goes here...";

这将导致:

label1.Text = "Some text goes here...";

如果我有几个案例,我不会介意使用switch案例,但我有大约40个标签,我希望根据变量值动态分配文本。

在标签名称中使用变量

在表单.中使用Controls.Find()

void Button1Click(object sender, EventArgs e)
{
    var test = 1;
    var labels = Controls.Find("label" + test, true);
    if (labels.Length > 0)
    {
        var label = (Label) labels[0];
        label.Text = "Some text goes here...";
    }
}
var test = 1;
Control label = this.FindControl("label" + test);
if(label != null)
{
  label.Text = "Some text goes here...";
}

有关FindControl的更多信息,请访问,https://msdn.microsoft.com/en-us/library/system.web.ui.control.findcontrol%28v=VS.100%29.aspx?f=255&MSPP错误=-2147217396

我有大约40个标签,我希望动态分配文本取决于可变值

下面是另一个例子,它与Handoko的方法基本相同:

for(int i = 1; i <= 40; i++)
{
    Label lbl = this.Controls.Find("label" + i.ToString(), true).FirstOrDefault() as Label;
    if (lbl != null)
    {
        lbl.Text = "Hello Label #" + i.ToString();
    }
}