日期:2014-05-17  浏览次数:20426 次

获取DataList模板里Lable的值,并传到另一页面
获取DataList模板里Lable的值,并传到另一页面
Label namelabel = DataList1.FindControl("Label1") as Label;
Response.Redirect("chanpin.aspx?name="+ namelabel +"");
这样传的是空值

Label namelabel = DataList1.FindControl("Label1") as Label;
Response.Redirect("chanpin.aspx?name="+ namelabel.Text +"");
这样说未将对象引用到实例

是不是写的语句用问题啊


------解决方案--------------------
写个例子,具体还得楼主自己理解。
取出DataList1里第一项里Label1的Text
C# code

    protected void Page_Load(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        DataColumn col1 = new DataColumn();
        col1.ColumnName = "number";
        col1.DataType = Type.GetType("System.String");
        col1.MaxLength = 10;
        dt.Columns.Add(col1);

        for (int i = 0; i < 10; i++) 
        {
            DataRow dr = dt.NewRow();
            dr["number"] = i.ToString();
            dt.Rows.Add(dr);
        }

        DataList1.DataSource = dt;
        DataList1.DataBind();

        Label entity = DataList1.Items[0].FindControl("Label1") as Label;
        Label2.Text = entity.Text;
    }