<ASP:Repeater Id="list"   Runat="Server"> 
    <ItemTemplate Name="ItemTemplate"> 
<asp:label ID="id" runat="server" Text=<%# DataBinder.Eval(Container.DataItem, "id") %>></asp:label>
    </ItemTemplate>
  </ASP:Repeater>
发现就是取不到这个ID的值
期待解决,高分相送

解决方案 »

  1.   

    no
    不行,DATAGRID倒是好办,手册里也好像没有
      

  2.   

    Repeater id=(Repeater)e.Item.FindControl("id");
      

  3.   

    Dim lblTest As Lable = e.Item.FindControl("id")
      

  4.   

    在绑定的时候从itemdatabound事件中可以找到
    如果是在回发的时候,好像要先找到索引
    其实repeater和datalist的性能差不多,建议楼主用datalist。那个的事件丰富多了
      

  5.   

    vb.net sub btn1_click(sender as object,e as eventargs)
    dim item as repeateritem
    for each item in list.items
    select case item.itemtype
    case ItemTemplate,alterItemTemplate
    response.write(ctype(e.item.fincontrol("id"),label).text & "<br>")
    end select
    next
    end 
      

  6.   

    在<itemtemplate>后面加一行
    <footertemplate><asp:button id="btn1" runat="server" onclick="btn1_click" /></footertemplate>
      

  7.   

    遍历时
    for (int j=0;j<this.list.Items.Count;j++)
    {
    //这样写不对,说不骨TEXT的属性
    string str=(DataBoundLiteralControl)list.Items[j].Controls[0].Text;
    }
    上面的都是在事件里写的,不行
      

  8.   

    你要怎么得到这个值?这个控件在页面上是重复好多个的。告诉我你要怎样获得这个Label的值。发email给我,我会回信给你的 
    mail: [email protected]
      

  9.   

    不好意思,我看错了寒,直接用FINDControl就可以得到
    ((Label)list.Items[j].FindControl("id")).Text