如何取到datalist中的一个label的值,我用vb.net如下:
dim testid as string
testid=e.item.findcontrol("label1").text
但是总是报错,text根本不会从提示中出现
另datalist怎么会一行一行的取label的值得阿,该写在哪个事件中
望指教,谢谢

解决方案 »

  1.   

            Dim testid As String
            testid = CType(e.Item.FindControl("label1"), Label).Text
      

  2.   

    一楼说的没错,需要将其转化为lable对象类型
      

  3.   

    findcontrol得到的是Control,Control没有Text属性...
      

  4.   

    C#的代码,需要强制转换为Label
    Labeltxt = row.FindControl("label1") as Label;
    VB.NET也应该如此
      

  5.   

    protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.EditItem)
            {
                    ((Label)e.Item.FindControl("lbname")).Text = "aa";            
            }
        }
    这样子就可以了,
      

  6.   

     label lbtn = (label)e.Row.FindControl("lbtnDelete");