1

我想将 Label 绑定到 Container.DataItem 内的通用列表的属性。

在这里,我在 Container.DataItem 中收到一个列表,想要进入这个包含列表的 Container.DataItem。

aspx 代码

<asp:Label ID="Label1" runat="server" Text='<%# Container.DataBind %>'></asp:Label>

输出 :

System.Collection.Generic.List'1[Sizes]

C#代码:

List<List<Sizes>> Combosizes =new List<List<Sizes>>();

foreach (var i in skuIdsList)
 {
 var Sizes_list = (from item in sizes
 where item.SkuId == i.skuid
 select new Sizes
    {
     skusizeid = item.SkuSizeId,
     sizevalue = item.Sizevalue
    }).ToList();

   Combosizes.Add(Sizes_list);
 }

DataList3.DataSource = Combosizes;
DataList3.DataBind();

这是我已将 List> 绑定到 DataList3。我正在尝试将 DataList3 内的标签与 List 的第一个索引绑定。

有什么解决办法吗??

4

1 回答 1

0
List<List<Sizes>> Combosizes =new List<List<Sizes>>();

foreach (var i in skuIdsList)
{
var Sizes_list = (from item in sizes
where item.SkuId == i.skuid
select new Sizes
{
skusizeid = item.SkuSizeId,
sizevalue = item.Sizevalue,
description = item.Description
}).ToList();

Combosizes.Add(Sizes_list);
}

DataList3.DataSource = Combosizes;
DataList3.DataBind();

您可以在 datalist item databound Event 处将值绑定到标签。

 protected void DataList3_ItemDataBound(object sender, DataListItemEventArgs e)
{
var des = (List<Sizes>)(e.Item.DataItem);
Label lblsize = e.Item.FindControl("lblsize") as Label;
lblsize.Text = des.First().description;
}
于 2012-08-29T09:38:50.057 回答