如何将List <string>绑定到asp.net </string>中另一个gridview内的gridview

时间:2014-08-21 13:36:53

标签: c# asp.net gridview

我只是想将下面的List对象绑定到Grid视图。该列表包含另一个列表。因此,当我绑定数据源时,该列将变为EMPTY。

以下详细信息:

List<Person> Persons = new List<Person>();
public class Person
{
    public string Name1;
    public string Name2;
    public List<string> Address;
    public DateTime DateOfBirth;
    public string TeamName;
}

我将gridview分配如下:

var data = new List<Persons>();
data = GetData();
GrdPerson.DataSource = data;
GrdPerson.DataBind();

由于我们在数据源中的地址为List<string>,因此它在页面中显示为空。

我知道地址不包含任何公共财产,因此它是空的。所以我尝试在Master Grid的Address列中使用Gridview。

但是不知道如何一次分配数据源。

1 个答案:

答案 0 :(得分:1)

您可以处理gridview的RowDataBound事件到DataBind内部网格:

protected void GrdPerson_RowDataBound(Object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        Person person = (Person)e.Row.DataItem;
        GridView innerGrid = (GridView)e.Row.FindControl("GrdPersonAddresses");
        innerGrid.DataSource = person.Address;
        innerGrid.DataBind();
    }
}