日期:2014-05-18  浏览次数:20373 次

为datalist里的HyperLink循环赋值时最后一个HyperLink赋不了值
代码如下:
 protected void dlService_ItemDataBound(object sender, DataListItemEventArgs e)
  {
  List<ArticleContents> arr = (List<ArticleContents>)ArticleContentsManager.GetServiceContentsByID();
  //foreach (DataListItem item in this.dlService.Items)
  for(int i = 0; i <= dlService.Items.Count - 1; i++)
  {
  HyperLink hl = dlService.Items[i].FindControl("HyperLink1") as HyperLink;
  String url = arr[i].附件URL;
  hl.Attributes.Add("href", "javascript:loadChildPage('" + url + "')");
  }
  }

我用了以下两种循环方式都不可以。
foreach (DataListItem item in this.dlService.Items)
for(int i = 0; i <= dlService.Items.Count - 1; i++)

------解决方案--------------------
你没有理解ItemDataBound其实就是循环

打开html源代码 分析下
------解决方案--------------------
方法不要放在dlService_ItemDataBound
在你的datalist绑定的后面