如何在gridview中显示大量数据

时间:2011-01-07 11:14:11

标签: asp.net vb.net gridview

我试图在gridview中显示大量数据,但问题是每次数据增加都会自动增加gridview行的大小。 有没有办法存储在我的MS访问数据库中的数据以多行而不是一条长行显示。

4 个答案:

答案 0 :(得分:2)

如果使用AutoGenerate="true" make AutoGenerate="false"

填充GridView

然后使用asp:TemplateField填充GridView 现在提供ItemStyle-WidthItemStyle-Wrap

<asp:TemplateField ItemStyle-Width="50px" ItemStyle-Wrap="true">
    <ItemTemplate>
        <asp:Label ID="ShipNameLabel" runat="server" Text='<%# Eval("ShipName") %>'></asp:Label>
    </ItemTemplate>
</asp:TemplateField>

答案 1 :(得分:0)

完全不理解你的问题,但听起来因为你可以更好地为你做更好的控制渲染布局。

如果是问题的行数,我建议引入分页来限制一次显示的行数。

<强>更新

1)为GridView本身设置一个CssClass,并包含table-layout:fixed style。这告诉浏览器您将指定每个单元格的宽度。您可能还想在这里包括网格的总宽度,正如我在(3)中提到的那样。

2)表格的第一行设置每个单元格的宽度,通常是HEADER行,而不是项目行,因此使用HeaderStyle-CssClass或HeaderStyle-Width来设置单元格的宽度。

3)确保桌子本身足够宽以容纳所有细胞。我添加了所有单元格宽度,并使用它通过GridView上的CssClass属性设置宽度。

答案 2 :(得分:0)

telerik gridview控件支持多行行http://www.telerik.com/products/aspnet-ajax/grid.aspx

然而,这确实有成本。您可以尝试只显示几列,然后用户必须单击该行才能在表单视图中查看其他信息。

答案 3 :(得分:0)

   <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns='false'>
        <Columns>
            <asp:BoundField DataField='Name' />
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:TextBox ID="TextBox1" runat='server' ReadOnly="true" BorderStyle="None"
                        TextMode="MultiLine" Text='<%# Bind("Description") %>'
                        >
                    </asp:TextBox>        
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

您可能需要通过.skin或css

为gridview添加一些样式