DataList中只有一个模版列,模版里只有一个Image控件,
我用 Image img = (Image)this.DataList1.TemplateControl.FindControl("ImageProd");
怎么找不到Image控件呢?

解决方案 »

  1.   

    要在datalist的item里才能找到
    比如DataList1.Item[0].FindControl("ImageProd");
      

  2.   

    你还没有绑定DataList吧
    或者绑定到DataList的数据源里没有数据查找控件只能在:ItemDataBound事件里查找
      

  3.   

    上面说错了

    查找控件最好在:ItemDataBound事件里查找
      

  4.   

    我要实现的是:页面加载时在datalist中绑定控件,由于数据库里存的是绝对路径所以直接绑定数据源时会把路径中文件夹名中的空格转换成字符,所以找不到图片
      

  5.   

    中文通过编码实现HttpUtility.UrlEncode,
    最好使用相对路径
      

  6.   


    现在是用相对路径,但datalist中模版列中的图片控件找不到
      

  7.   

    Image image = e.Item.FindControl("Image1") as Image;
      

  8.   

    foreach (DataListItem item in DataList1.Items)
    {
       Image img=(Image)item.FindControl("img");
    }
    在itembound事件  
      Image   img=(image)e.item.findcontrol("");   
      if(img!=null)   
      {}
      

  9.   

    楼主的观念不对,
    你的DataList如果没绑定数据,怎么可能显示图片?
    绑定了数据,就会激发ItemDataBound事件就算不是DataList,光Page在加载时
    都会激发N个事件,比如PreInit、Init、PreLoad、Load…………