1

我的问题场景如下:

我有一个绑定到 objectdatasourceA 的 GridviewA。当我单击 GridviewA 行时,我希望另一个 objectdatasourceB 从 GridViewA 中选择 ID,然后获取 GridviewB 的记录。这就像主细节。

我可以这样做以及如何使用 javascript/jqueryscript 使其顺利进行。

4

2 回答 2

0

你的内部对象数据源应该看起来像

<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="Getmethod"
                TypeName="namespace">
                <SelectParameters>
                    <asp:ControlParameter ControlID="GridView1" Name="YourFieldName" PropertyName="SelectedValue"
                        Type="Int32" />
                </SelectParameters>
            </asp:ObjectDataSource>
于 2009-10-07T05:07:42.537 回答
0

首先确保您已将 gridview A 上的 dataKey 属性设置为底层对象的 ID 属性(或您想要传递给 objectDataSource B 的 select 方法的任何内容)

然后转到objectDataSource B,对其进行配置,选择接受参数的选择方法,然后单击下一步。它会询问您从哪里获取该参数(我认为您可以在控件、会话和其他内容之间进行选择)并选择控件,它将填充页面上所有控件的列表并选择您的 gridview A。

这会将所选行 dataKey 从 gridview A 传递给链接到 objectDataSource B 的方法。选择代码将运行,然后您的 gridview B 将显示所需的子集。如果您在 gridView A 中选择一个新行,它将自动更新 gridview B 以显示所需的数据。

假设您的方法设置正确,您几乎不需要编写任何代码就可以做到这一点。如果您要这样做,请查看一些可用的缓存方法,因为根据记录集的大小,它可能会占用大量带宽。

于 2009-10-07T05:56:47.167 回答