如何获取datalist中label的值并且要将其赋值另一个不在datalist中的label,请各位帮忙?头晕了

解决方案 »

  1.   

      DataListItem item = DataList1.Items[0];
            Label lbl = (Label)item.FindControl("lblTitle");
            Response.Write(lbl.Text);
      

  2.   

    DataListItem item = DataList1.Items[0];
            Label lbl = (Label)item.FindControl("lblTitle");lblTitle---请问是哪个label?
    新手不会
      

  3.   

    我用你的方法来进行显示是可以的啊,可是我用他进行修改就报错?
    说:DataListItem item = DataList1.Items[0];
    索引超出范围。必须为非负值并小于集合大小。
    参数名: index 
      

  4.   

    是不是没有记录啊,加个判断
     if (DataList1.Items.Count > 0)
            {
                DataListItem item = DataList1.Items[0]; 
            }
      

  5.   

    没确定要哪行的LABEL啊,在绑定事件中写
    if(判断类型.......)
    {
            Label lbl = (Label)item.FindControl("lblTitle");
            e.Item.Attributes.Add("OnClick","SelectRow(" + lbl.text + ")");
    }
    前台
    function SelectRow(str)
    {
       document.getElementById('lbl').value= str;
    }
      

  6.   


    Label lbl = (Label)DataList.items[0].FindControl("lblTitle");
    //lbl.Text  就是Datalist里的值
      

  7.   


    <%@ Page Language="C#" AutoEventWireup="True" %>
    <%@ Import Namespace="System.Data" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html  >
       <script language = "C#" runat="server">      ICollection CreateDataSource() 
          {
             DataTable dt = new DataTable();
             DataRow dr;         dt.Columns.Add(new DataColumn("StringValue", typeof(string)));         for (int i = 0; i < 10; i++) 
             {
                dr = dt.NewRow();
                dr[0] = "Item " + i.ToString();
                dt.Rows.Add(dr);
             }         DataView dv = new DataView(dt);
             return dv;
          }      void Page_Load(Object sender, EventArgs e) 
          {
             if (!IsPostBack) 
             {
                DataList1.DataSource = CreateDataSource();
                DataList1.DataBind();
             }
          }      void Button_Click(Object sender, EventArgs e)
          { 
             if (DataList1.Items.Count > 0)
             {
                Label1.Text = "The Items collection contains: <br />";            foreach(DataListItem item in DataList1.Items)
                {               Label1.Text += ((DataBoundLiteralControl)item.Controls[0]).Text +
                                  "<br />";
                }
             }
          }    </script><head id="Head1" runat="server">
        <title>DataList Items Example</title>
    </head>
    <body>   <form id="form1" runat="server">      <h3>DataList Items Example</h3>      <asp:DataList id="DataList1" runat="server"
               BorderColor="black"
               CellPadding="3"
               Font-Names="Verdana"
               Font-Size="8pt">         <HeaderStyle BackColor="#aaaadd">
             </HeaderStyle>         <AlternatingItemStyle BackColor="Gainsboro">
             </AlternatingItemStyle>         <HeaderTemplate>            Items         </HeaderTemplate>         <ItemTemplate>            <%# DataBinder.Eval(Container.DataItem, "StringValue") %>         </ItemTemplate>      </asp:DataList>        <br /><br />      <asp:Button id="Button1"
               Text="Display Contents of Items Collection"
               OnClick="Button_Click"
               runat="server"/>      <br /><br />      <asp:Label id="Label1"
               runat="server"/>   </form></body>
    </html>