datagrid能不能一行一行显示,而不是一列一列显示??在线等!!因为我的数据字段比较多,所以以列的形式显的很多,所以我想以行来显示,但是不知道datagrid可以实现吗?

解决方案 »

  1.   

    用Repeater控件,这样自由度大些,在其ItemCreate事件中,画出表格即可.给你一段代码参考
    private void _RptForums_ItemCreated(object sender, RepeaterItemEventArgs e)
    {
    Literal item = (Literal)e.Item.FindControl("item"); if (null==item)
    return; if( e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem )
    {
    string text = string.Empty;
    if( (e.Item.ItemIndex % _column) ==0 )//tr
    {
    if(e.Item.ItemIndex == _count-1)//last
    {
    text = @"</tr><tr><td><a href=""{1}"">{0}</a></td></tr>";
    text = string.Format(text, ((Forum)e.Item.DataItem).Name, Globals.InSpecialForumGroups( ((Forum)e.Item.DataItem).ForumGroupID ) ? Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID,true ) : Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID ));
    item.Text = text;
    return;
    } if( _isFirst )
    {
    text = @"<tr><td><a href=""{1}"">{0}</a></td>";
    text = string.Format(text, ((Forum)e.Item.DataItem).Name, Globals.InSpecialForumGroups( ((Forum)e.Item.DataItem).ForumGroupID ) ? Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID,true ) : Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID ));
    item.Text = text;
    _isFirst = false;
    }
    else
    {
    text = @"</tr><tr><td><a href=""{1}"">{0}</a></td>";
    text = string.Format(text, ((Forum)e.Item.DataItem).Name, Globals.InSpecialForumGroups( ((Forum)e.Item.DataItem).ForumGroupID ) ? Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID,true ) : Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID ));
    item.Text = text;
    } }
    else//td
    {
    if(e.Item.ItemIndex == _count-1)//last
    {
    text = @"<td><a href=""{1}"">{0}</a></td></tr>";
    text = string.Format(text, ((Forum)e.Item.DataItem).Name, Globals.InSpecialForumGroups( ((Forum)e.Item.DataItem).ForumGroupID ) ? Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID,true ) : Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID ));
    item.Text = text;
    return;
    } text = @"<td><a href=""{1}"">{0}</a></td>";
    text = string.Format(text, ((Forum)e.Item.DataItem).Name, Globals.InSpecialForumGroups( ((Forum)e.Item.DataItem).ForumGroupID ) ? Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID,true ) : Globals.GetSiteUrls().Forum( ((Forum)e.Item.DataItem).ForumID ));
    item.Text = text;
    }
    }
    }