网格视图在一条记录中显示几行数据



我使用Gridview有一段时间了,我注意到创建一个简单的表并用日期f.e.填充它非常容易

ID Name Surename Phone .....
1 Tom   Tomtom    111122233 
2 Vic   VicVic    21231231
3 Rik   RikRik    123545343

所以这里我们有一个简单的网格视图,有三条记录,每条记录都在一行中!我需要的是把一个记录信息放在三行,比如这里:

           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

所以这里我们有一个网格视图,这里我们用三行显示一条记录的信息。。。那么如何做到这一点呢?

当我有一个数据对象时,我用这个代码来填充我的网格视图,但这只适用于单行记录

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);
            }
        }

在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

您可以为此目的使用模板。在表头模板和项目模板中插入表格(根据您的需要)。在表中可以插入标签。将标签与数据表中的列绑定。(Eval("列名"))。现在你得到了你所期望的网格视图。

相关内容

  • 没有找到相关文章

最新更新