0

作为一个新手,我尝试了几次谷歌搜索,并找到了一些令人困惑的答案。我想要实现的是:

  1. 点击一个按钮(其中一个),

  2. 提取该按钮的文本值,然后

  3. 使用该值使相关占位符可见。

到目前为止,我已经完成了前 2 个步骤,但是如何完成第 3 步呢?到目前为止,如果我单击Asia按钮,我的代码是:

protected void btnArea_Click(object sender, EventArgs e)
{
    string ar = (sender as Button).Text;
    //ar = "Asia";
    phdasia.Visible = true;
}

简单来说,新手友好的话,我必须插入什么来代替phdasia

4

1 回答 1

1

如果您的占位符控件共享相同的名称格式,您可以通过名称访问它们:

protected void btnArea_Click(object sender, EventArgs e)
{
    string ar = (sender as Button).Text;
    //ar = "Asia";
    string name = "phd" + ar.ToLower(); // The naming format comes here
    Control[] controls = this.Controls.Find(name, true); //find the control(s) by name

    foreach(Control control in controls) // mow loop and make them visible
        control.Visible = true;
    //phdasia.Visible = true;
}

编辑:或者,您可以使用方法在包含页面上FindControl找到具有 ID 属性的控件:"phdasia"

Control control = FindControl(name);
if(control!=null)
    control.Visible = true;
于 2018-11-03T20:39:56.817 回答