嗨我想找到一个图像按钮控件,它在一个嵌套在3个div标签中的表中实际上如果我使用下面的代码则返回null
for (int j = 1; j < 38; j++)
{
string s = "ib_s" + j;
ImageButton img = (ImageButton)FindControl(s.ToString());
if (status[j] == "B")
{
img.ImageUrl = "~/graphics/Booked.jpg";
img.Enabled = false;
}
else
{
img.ImageUrl = "~/graphics/Available.jpg";
}
}
因为我想找到id为ib_s1,ib_s2 ....的图像按钮并更改图像网址。
我使用此页面的母版页,所以请帮助我。
答案 0 :(得分:0)
在@Filip Ekberg评论时,请确保ImageButton
具有runat="server"
属性。
如果ImageButton
位于内容网页上,则无法在后面的MasterPage
代码中找到它们。
答案 1 :(得分:0)
使用runat =“server”属性标记外部div并在该div中搜索ImageButton:ImageButton img = containerDivId.FindControl(imageButtonServerID) as ImageButton;
答案 2 :(得分:0)
我在这里使用了这段代码http://www.asp.net/master-pages/tutorials/control-id-naming-in-content-pages-cs
for (int j = 0; j < 37; j++)
{
string s = "ctl00$ContentPlaceHolder1$ib_s" + k;
ImageButton img = (ImageButton)FindControl(s.ToString());
if (status[j] == "B")
{
img.ImageUrl = "~/graphics/Booked.jpg";
img.Enabled = false;
}
else
{
img.ImageUrl = "~/graphics/Available.jpg";
}
k++;
}