Gridview在一条记录中显示几行数据

时间:2012-02-20 06:02:11

标签: asp.net c#-4.0 gridview grid

我现在使用Gridview已经有一段时间了,我注意到很容易创建一个简单的表并用日期填充它。

ID Name Surename Phone .....

1 Tom   Tomtom    111122233 
2 Vic   VicVic    21231231
3 Rik   RikRik    123545343

所以这里我们有一个简单的gridview,有三条记录,每条记录都在一行! 我需要的是将一条记录信息放在三行中,如下所示:

           ID Name Surename Phone .....

         / 1 Tom   Tomtom    111122233 
record1 {  Additional info: blablabla
         \ More info: xxxxx 
         / 2 Vic   VicVic    21231231
record2 {  Additional info: blablabla
         \ More info: xxxxx 
         / 3 Rik   RikRik    123545343
record3 {  Additional info: blablabla
         \ More info: xxxxx

所以这里我们有一个Gridview,在这里我们用三行显示一条记录的信息......那么怎么做呢?

当我有一个数据对象时,我正在使用此代码填充我的gridview,但这只适用于一行记录

private void grdMyGrid_RowDataBound(object sender, GridViewRowEventArgs e)
        {

            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                MyObject ObjectEl = (MyObject)e.Row.DataItem;
                e.Row.Cells[0].Text = ObjectEl.ID.ToString();
                e.Row.Cells[1].Text = ObjectEl.Name.ToString();
                e.Row.Cells[2].Text = ObjectEl.Surename.ToString();

                LinkButton lbtConfigure = (LinkButton)e.Row.Cells[3].FindControl("lbtConfigure");
                lbtConfigure.CommandArgument = Convert.ToString(ObjectEl.ID);

            }
        }

2 个答案:

答案 0 :(得分:1)

在gridview中可以模拟这样的行,但listview控件更适合这种类型的数据。

看看这里,这会让你开始。

http://weblogs.asp.net/scottgu/archive/2007/08/10/the-asp-listview-control-part-1-building-a-product-listing-page-with-clean-css-ui.aspx

答案 1 :(得分:0)

你可以使用模板来达到这个目的。 在标题模板和项目模板中插入表格(根据您的需要)。 在表格中,您可以插入标签。 将标签与数据表中的列绑定。(Eval(“columnname”))。 现在你按照预期得到了gridview。