添加跨Gridview的其他行

时间:2015-03-06 17:12:51

标签: c# asp.net gridview

由于房间问题,我需要额外的一行。我有连续的数据,但我希望有第二行提供其他数据,如下所示:

row 1  |Field 1|Field 2|Field 3|
row 1.5|Additional information |
row 2  |Field 1|Field 2|Field 3|
row 2.5|Additional information |

其中row .5是我要插入的行。有没有办法在行创建上创建额外的行?或者有没有办法在同一行内完成所有这些?

谢谢!

2 个答案:

答案 0 :(得分:1)

Gridviews内置了编辑/删除命令,但就布局而言可能具有限制性。使用Repeater可以为您提供所需的布局,但您需要根据需要在Add / Edit / Delete方法中进行编码。这里有一个很好的教程...... http://www.codeproject.com/Articles/247289/In-place-editing-with-ASP-NET-Repeater

我知道提供链接作为答案是不可取的,因为文章可以消失,但这篇文章很长......

答案 1 :(得分:0)

我最近在GridView中添加了类似的行,遵循本文中的示例: http://www.codeproject.com/Articles/20047/Editable-Nested-GridView-All-in-One

他在新行中添加了另一个gridview,但如果您愿意,可以添加其他内容。以下是本文的重点之一:

  

...我们必须了解GridView如何将其内容作为HTML标记发布。对于   在Internet Explorer浏览器中,GridView就像一个带TR的常规表   和TD标签。所以,如果我们可以强制操纵父GridView   关闭一行并将子GridView作为另一行发出,我们完成了   它

     

显示的是一些HTML表格单元格和行标记   有效地拦截将由此产生的当前输出   GridView与我们自己的特殊实现。也就是说,我们在说   表格(当它被绘制时)关闭当前单元格,即当前单元格   行,现在添加一个带有一个空白列的新行(用于间距)和   另一列(跨越所有列),我们将用它来显示第二列   GridView的。

这是我的代码:

<asp:TemplateField HeaderText=" ">
    <ItemTemplate>
        <tr>
            <td colspan="100%">
                <div id="div<%# Eval("Material_Selected_ID")%>" style="position: relative; left: 280px; overflow: auto; width: 97%">
                    <!-- Your new line of data goes here. In my case I added a user control that referenced the current line of data. -->
                </div>
            </td>
       </tr>
    </ItemTemplate>
</asp:TemplateField>