使用gridview在列中显示数据

时间:2014-06-16 04:29:37

标签: c# asp.net gridview

您好我试图在2栏中显示数据......例如

col       col            

A          E       
B          F       
C          G       
D          H  

我能够显示单列,但我无法显示2列,当我在gridview中添加新字段以显示列显示相同列时。喜欢

col       col            

A          A       
B          B       
C          C       
D          D

我希望以连续性显示数据。请建议我一个解决方案。 谢谢

 <asp:GridView 
       ] ID="GridViewProducts" 
        DataKeyNames="pkProductId,RetailPrice"
        runat="server" 
        OnSelectedIndexChanged="getSelectedRowToCard"            
        AutoGenerateColumns="false"
        AllowPaging="True"  
        PageSize="4"
        OnPageIndexChanging="OnNewPage"
        BorderWidth="0px"
        BorderColor="White" Width="341px">
            <Columns>
                <asp:CommandField ShowSelectButton="True" SelectText="ADD To Card"/>                    
                <asp:TemplateField>
                    <ItemTemplate>
                        <br />                            
                        Description:
                        <asp:HyperLink ID="SelectProduct" NavigateUrl="~/Home.aspx"                                                    
                        runat="server"><%#Eval("Description").ToString()%> 
                        </asp:HyperLink>
                        <br />
                        TypeDescription: <%#Eval("TypeDescription").ToString()%>
                        <br />
                        <span style="color: #FF3300">RetailPrice:$</span>
                        <%#Eval("RetailPrice").ToString()%>
                        <br />
                        Weight: <%#Eval("Weight").ToString()%>
                        <%--<asp:Button ID=btn runat="server" Text="Add to Cart"
                        OnCommand="getSelectedRowToCard"/>--%>
                        <br />
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:HyperLinkField />
                <asp:CommandField SelectText="ADD To Card" ShowSelectButton="True" />
                <asp:TemplateField>
                    <ItemTemplate>
                        <br />
                        Description:
                        <asp:HyperLink ID="SelectProduct" runat="server"                
                        NavigateUrl="~/Home.aspx"><%#Eval("Description").ToString()%>
                        </asp:HyperLink>
                        <br />
                        TypeDescription: <%#Eval("TypeDescription").ToString()%>
                        <br />
                        <span style="color: #FF3300">RetailPrice:$</span>
                        <%#Eval("RetailPrice").ToString()%>
                        <br />
                        Weight: <%#Eval("Weight").ToString()%>
                        </ItemTemplate>
                </asp:TemplateField>
                <asp:HyperLinkField />
            </Columns>
        </asp:GridView>

1 个答案:

答案 0 :(得分:1)

我认为您应该考虑使用DataList控件而不是GridView。

Here是关于如何使用它的非常好的教程,here您可以找到有关RepeatDirectionRepeatLayoutRepeatColumns属性的信息。

例如,通过将RepeatColumns设置为2,将RepeatLayout设置为"Table",将RepeatDirection设置为"Vertical",即可实现您的布局后:

A   E
B   F
C   G 
D   H

如果您对控件的性能感到好奇,可以找到一个很好的比较here