合并网格视图和详细信息视图行为的方法

时间:2013-06-24 05:24:39

标签: asp.net gridview detailsview

在我的网站上,我正在向用户显示收据。对于大多数收据,简单的详细信息视图效果很好。但是,当我到达订单中的项目时,它只显示返回的第一个项目,这是预期的。但我需要一种方法来列出与订单相关的所有项目。所以,我正在考虑在我的一对多关系中为“一个”订单记录查看部分详细信息,并为我的项目设置另一个控件 - 网格视图。

我的问题是,这是唯一可以完成的方式,还是我可以以某种方式合并两个控件的工作方式,并让详细信息视图只检索一个订单但所有关联的项目?

1 个答案:

答案 0 :(得分:0)

最初这不可能像你希望的那样。

但是您可以做的是将Web用户控件嵌套到列表视图中,并且该Web用户控件具有详细信息视图,以将参数传递给Web用户控件后面的代码,您可以这样做。

MainPage.aspx

<asp:ListView ID="ItemList">
    <ItemTemplate>
        <uc1:TestControl runat="server" id="TestControl" Example='<%# Eval("DetailsViewID")%>'/>
    </ItemTemplate>
</asp:ListView>
用户控件TestControl.ascx.cs上的

可以通过调用

来访问Example属性
Public string Example { get; set;}

然后您可以从后面的代码构建TestControl.ascx的详细信息视图