asp.net - GridView 中需要两个标题行

标签 asp.net gridview

我有一个购物车项目的 GridView ,它在运行时绑定(bind),现在我的要求是我想要网格中的两个标题行,如下图所示,这怎么可能?谁能帮助我吗?

My Design For Grid http://content.screencast.com/users/Pr6546/folders/Default/media/f7da2da4-f80e-4674-b1d4-0ccd872966d2/Capture.PNG http://www.screencast.com/t/g4HkqlSpx

下面是我的网格源

<asp:GridView ID="gvCheckOutItems" GridLines="None" ShowFooter="true" DataKeyNames="Item_No"
    Width="100%" border="0" CellSpacing="0" CellPadding="5" AutoGenerateColumns="false"
    CssClass="Checkout-Grid" runat="server" OnRowCreated="gvCheckOutItems_RowCreated">
    <Columns>
        <asp:TemplateField HeaderStyle-Width="7%">
            <ItemTemplate>
                <asp:LinkButton ID="lnkBtnRemove" runat="server" OnClick="lnkBtnRemove_Click" Text="Remove"
                    CssClass="blue-link"></asp:LinkButton>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField HeaderText="Item No" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left"
            DataField="Item_No" HeaderStyle-Width="7%" />
        <asp:BoundField HeaderText="Title" HeaderStyle-HorizontalAlign="Left" FooterStyle-HorizontalAlign="Center"
            ItemStyle-HorizontalAlign="Left" DataField="Title" HeaderStyle-Width="25%" />
        <asp:BoundField HeaderText="Offered By" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left"
            DataField="Trainer" HeaderStyle-Width="16%" FooterText="<strong>Order Total</strong>" />
        <asp:TemplateField>
            <ItemTemplate>
                <asp:TextBox ID="txtItemFormat" runat="server" Text='<%# Eval("Item_Format") %>'
                    Visible="false"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField HeaderText="Format" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left"
            DataField="Format" HeaderStyle-Width="15%" />
        <asp:BoundField HeaderText="Duration" ItemStyle-HorizontalAlign="Right" DataField="Duration"
            HeaderStyle-Width="7%" />
        <asp:TemplateField HeaderStyle-Width="7%" HeaderStyle-HorizontalAlign="Right" ItemStyle-HorizontalAlign="Right"
            FooterStyle-HorizontalAlign="Right" HeaderText="Quantity">
            <ItemTemplate>
                <asp:TextBox ID="txtQuantity" Enabled="false" CssClass="quantity" Text='<%#Eval("Quantity")%>'
                    onblur="fnquantityEmpty(this)" onkeyup="extractNumber(this,0,false);" onkeypress="return blockNonNumbers(this, event, false, false);"
                    runat="server" MaxLength="4" AutoPostBack="true" OnTextChanged="Qty_Changed"></asp:TextBox>
            </ItemTemplate>
            <FooterTemplate>
                <strong>
                    <asp:Label ID="lblFooterQuantity" runat="server"></asp:Label></strong>
            </FooterTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Price" ItemStyle-HorizontalAlign="Right" HeaderStyle-HorizontalAlign="Center"
            HeaderStyle-Width="7%">
            <ItemTemplate>
                <asp:Label ID="lblPrice" runat="server" Text='<%#getConvertedPrice(Eval("Price")) %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:TextBox ID="txtItemOwnerID" runat="server" Text='<%# Eval("ItemOwnerID") %>'
                    Visible="false"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Subtotal" ItemStyle-HorizontalAlign="Right" HeaderStyle-HorizontalAlign="Right"
            FooterStyle-HorizontalAlign="Right" HeaderStyle-Width="8%">
            <ItemTemplate>
                <asp:Label ID="lblSubTotal" runat="server" Text='<%#getConvertedPrice(Eval("Subtotal")) %>'></asp:Label>
            </ItemTemplate>
            <FooterTemplate>
                <strong>
                    <asp:Label ID="lblFooterTotalPrice" runat="server" Text="" ToolTip="Total"></asp:Label></strong>
            </FooterTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

问候

最佳答案

您是否考虑过放弃 gridview 并使用转发器控件?这将为您提供更大的灵活性。

关于asp.net - GridView 中需要两个标题行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10102861/

相关文章:

android - 如何在 GridView 中处理卡片按钮的 OnClick 事件?最佳实践

asp.net - web.config 将非 www 或非 https 重定向到 https ://www using rules

c# - {"The specified cast from a materialized ' System.Guid' 类型到 'System.Int32' 类型无效。"

asp.net - 如何跨多个 ASP.NET 请求更新 EF 中的实体而无需再次检索它?

c# - 使用 MailKit 库保存附件?

c# - 在 WPF MVVM 的 GridView 中动态创建列

c# - 如何从 GridView 获取 BoundField

android - 在 Android 上,在 GridView 中显示来自文件的图像非常慢

c# - 清除存储在客户端位置的 ASP.net MVC 5 中的输出缓存

asp.net - c#使用onrowdatabound从gridview asp.net中的隐藏单元格获取值