【问题标题】:Horizontally repeat data in gridview [closed]在gridview中水平重复数据[关闭]
【发布时间】:2014-01-08 13:29:09
【问题描述】:

我当前的GridView_RowDataBound 显示如下数据:

A B C D E

我想像这样显示它:

A
B
C
D
E

有没有简单的方法呢?

我不确定Gridview 是否可行,我在GridView_RowDataBound 的.cs 末尾没有任何代码。

目前数据在 excel 导出中垂直重复,我希望它是水平的

thnx

<asp:Panel ID="Panel11" runat="server">
                        <span style="background-color: #">
                        <asp:GridView ID="GridView4" runat="server" AutoGenerateColumns="false" EnableModelValidation="True" 
                            onrowdatabound="GridView4_RowDataBound" ShowHeader="False" Visible="false"  
                            Width="700px">
                            <Columns>


                                 <asp:TemplateField HeaderText="Test">
                                    <EditItemTemplate>
                                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Test") %>'></asp:TextBox>
                                    </EditItemTemplate>
                                    <ItemTemplate>
                                    <asp:Label ID="Label1" runat="server" BackColor="Fuchsia" 
                                            Text='<%# Bind("Test") %>'></asp:Label>

                                    </ItemTemplate>
                                </asp:TemplateField>





                                 <asp:TemplateField HeaderText="Test2">
                                    <EditItemTemplate>
                                        <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Test2") %>'></asp:TextBox>
                                    </EditItemTemplate>
                                    <ItemTemplate>
                                   <asp:Label ID="Label2" runat="server" BackColor="Fuchsia" 
                                            Text='<%# Bind("Test2") %>'></asp:Label>

                                    </ItemTemplate>
                                </asp:TemplateField>

                            </Columns>

                            <EmptyDataRowStyle Height="6px" />
                            <FooterStyle Height="4px" />
                            <HeaderStyle Font-Size="X-Small" Height="10px" />
                            <RowStyle Font-Size="X-Small" Height="6px" HorizontalAlign="Left" 
                                VerticalAlign="Top" />
                        </asp:GridView>

                    </asp:Panel>

【问题讨论】:

  • GridView 默认情况下垂直重复数据,所以我不明白这个问题。
  • 也许操作意味着只有一行但有多个列,他想转置?
  • @TimSchmelter 抱歉,我希望它水平重复。 :)
  • 尝试使用listview/repeater
  • @user2910569:您可以使用具有RepeatDirection 属性的DataList

标签: c# asp.net


【解决方案1】:

使用 GridView 是无法做到的。请查看下面的详细信息。你想要的是一个 GridView 不支持的 FlowLayout。

如果您更关心excel中的导出。我建议使用 OpenOfficeXML 将数据从 DataTables 导出到 xls,如下面的文章中所述:

http://openxmldeveloper.org/discussions/development_tools/f/35/t/6033.aspx

Export DataTable to Excel with Open Xml SDK in c#

【讨论】:

  • 流程布局数据列表会影响我的excel导出吗?
  • 检查导出功能的编辑答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-01
  • 2013-07-29
  • 2021-08-07
  • 1970-01-01
相关资源
最近更新 更多