急:关于循环为控件赋值,在线等
代码如下,我希望动态修改imagebutton的图片属性,用如下代码后每次findcontorl以后说“未将对象引用导实例”请各位高手帮忙看看,谢谢!
for(int i=0;i<80;i++)
{
if(chars[i]=='1')
{
ImageButton img=(ImageButton)this.FindControl("ImageButton"+(i+1).ToString());
if(img.HasControls() == true)
{img.ImageUrl="images/green.jpg";}
}
} --------------------编程问答-------------------- img 没找到把 --------------------编程问答-------------------- 这句
ImageButton img=(ImageButton)this.FindControl("ImageButton"+(i+1).ToString());
确认ImageButton"+(i+1)这个控件是否已经存在
最好在此之前先做个存在判断. --------------------编程问答-------------------- ImageButton img=(ImageButton)this.FindControl("ImageButton"+(i+1).ToString());这个写的不对
建议你定义个输注将ImageButton添加进去
List<string> aa=new List<string>();
for(int i=0;i<80;i++)
{
aa.Add("ImageButton"+(i+1).tostring());
}
ImageButton img=(ImageButton)this.FindControl[arr[i]; --------------------编程问答-------------------- 路过,学习了~ --------------------编程问答-------------------- 没经过测试你看看我新手刚学习.net --------------------编程问答-------------------- 网页太慢了,问题我已经解决了, 我imagebutton实际安排没有80个,但循环80次,所以有的查不到。谢谢各位帮忙。
HasControls() 方法我也用错了,这里其实是不是判断是否有子控件,我没有完全理解该方法的意思。 --------------------编程问答-------------------- 参考这个:
for (int i = 0; i < this.Controls.Count ; i++)
{
CheckBox cb = this.Controls["checkbox" + i] as CheckBox;//this.Controls[string] 要从控件集合中检索的控件的名称。
if (cb != null)
{
Console.WriteLine("name :{0} TabIndex :{1}", cb.Name, cb.TabIndex);
}
}
补充:.NET技术 , C#