首页 > 解决方案 > 如何在 VB 中格式化动态网格视图?

问题描述

我在 vb 中格式化动态网格视图时遇到问题。希望任何人都可以帮助我对此提出一些想法。

在此处输入图像描述

显然,如图所示,红色框中将是动态子标题和动态行。这些动态项的值由用户输入定义。所以我将从数据库中检索子标题和行的值。

但是,在将其格式化为 VB 时,我遇到了问题。希望你能帮助我提供一些关于它的想法。

我相信我仍然需要<asp:GridView></asp:GridView>在标记中并在后面的代码中格式化动态。

提前感谢。

标签: asp.netvb.netgridviewdynamicgridview

解决方案


我建议您使用列表视图进行此类额外定制。

而且您的标题要求看起来不像数据库表中的标题。因此,gridview(或更好的 listview)可以呈现重复的数据行。但是那个标题部分?这根本不是列的数据库标题 - 甚至没有关闭。这表明顶部不能真正成为列表视图/网格视图的标题。

但是,我确实建议这里的 listview 会比 gridview 好得多。原因是数据行,标题部分可以用listview标记。

在 gridivew 中,您甚至可以将顶部布局在 lv 之外,然后考虑是否值得努力将该布局移动到 lv 中,或者将其留在顶部。

因此,我将顶部部分布局为标准的 Web 布局,就像您希望在该页面上拥有的任何其他内容一样。

然后在下面,您可以对重复的数据行使用列表视图/网格视图。

然后,您可能可以将您在顶部单独布置的内容放入列表视图中,但这可能不值得麻烦。

考虑到顶部的布局——我倾向于单独建造的想法。也不清楚数据源对此的规范化程度,以及涉及多少表。因此,这里有大量的问题和细节,相当于 50 页以上的问题。

但是,对于如此高度的定制,列表视图将是更好的选择。因此,我会花一些时间在谷歌上搜索 asp.net 的列表视图示例。

但是,顶部部分最好作为单独的部分,并由您创建任务。(所以它实际上是一种表单类型的布局,而不是一些“重复”的行数据集)。

但是,对于底部重复的数据行?Listview 或网格视图就足够了。但顶部不是任何类型的基于列名的经典数据库标题,下面是重复的简单数据行。这将只是纯 HTML 布局,您必须像布局任何其他网页一样这样做。

甚至可以只为该部分使用一个普通的简 HTML 表。

请注意 listview 如何在标题布局中允许这样做:

            <LayoutTemplate>
                <h2>My Cooling heading area layout</h2>
                <div style="width:140px;border:solid;background-color:aquamarine;float:left">
                Holiday description
                <asp:TextBox ID="TextBox1" runat="server" BackColor="Transparent"></asp:TextBox>
                </div>
                <div style="width:140px;border:solid;background-color:aquamarine;float:left">
                Holiday description
                <asp:TextBox ID="TextBox2" runat="server" BackColor="Transparent"></asp:TextBox>
                </div>
                <div style="clear:both"></div>"

                            <table id="itemPlaceholderContainer" runat="server" border="0" style="">
                                <tr runat="server" style="">
                                    <th runat="server">FirstName</th>
                                    <th runat="server">LastName</th>
                                    <th runat="server">City</th>
                                    <th runat="server">Active</th>

所以,我们看到了:

在此处输入图像描述

如果我运行上面的,我们得到这个:

在此处输入图像描述

所以你可以用任何你想要的标记来布局标题部分。

但下面是重复行的表格布局。

所以你可以为重复的行(简单)布局几乎所有的 HTML 标记,然后布局标题部分(困难),但至少使用列表视图可以做到这一点。所以,listview 比 gridiew 有更多的配置和布局能力。

对于一个简单的数据网格?网格视图很棒。

对于更复杂但更多的工作?然后使用列表视图。


推荐阅读