将字符串值转换为占位符id



作为一名新手,我尝试了几次谷歌搜索,发现了一些令人困惑的答案。我正在努力实现的是:

  1. 点击一个按钮(众多按钮之一(,

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

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

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

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

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

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

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;

最新更新