0

我的代码所做的是,EntityDataSource 有一个与第一个 DropDownList 绑定的 Where 参数,它填充了第二个 DropDownList,但是当第一个 DDL 更改时,EntityDataSource 不会更改第二个 DDL 的值。

值得一提的是,这是在 UpdatePanel 内的 ModalPopupExtender 内。

也许有一种方法可以将所有数据放在第二个 DropDownList 中,并根据第一个的值对其进行过滤......或类似的东西......所以不需要刷新数据。

<asp:DropDownList ID="PaqueteKitDropDownList" runat="server" DataSourceID="PaqueteEntityDataSource"
                DataTextField="Nombre" DataValueField="ID_Paquete" />
            <asp:EntityDataSource ID="PaqueteEntityDataSource" runat="server" ConnectionString="name=CCEntities"
                DefaultContainerName="CCEntities" EnableFlattening="False" EntitySetName="Paquetes">
            </asp:EntityDataSource>
            <br />
            <asp:Label ID="Label66" AssociatedControlID="PlanKitDropDownList" runat="server"
                Text="Plan:" />
            <asp:DropDownList ID="PlanKitDropDownList" runat="server" DataSourceID="PlanKitEntityDataSource"
                DataTextField="Duracion" DataValueField="Costo" />
            <asp:EntityDataSource ID="PlanKitEntityDataSource" runat="server" ConnectionString="name=CCEntities"
                DefaultContainerName="CCEntities" EnableFlattening="False" EntitySetName="Duracion_Plan"
                Where="it.ID_Paquete == @ID" OrderBy="it.Duracion ASC">
                <WhereParameters>
                    <asp:ControlParameter DbType="Guid" Name="ID" ControlID="PaqueteKitDropDownList"
                        PropertyName="SelectedValue" />
                </WhereParameters>
            </asp:EntityDataSource>
4

2 回答 2

0

添加SelectedIndexChanged Event到您的第一个DropDownList并重新绑定第二个

于 2011-03-18T12:05:34.587 回答
0

调用:

PlanKitDropDownList.DataBind()
于 2011-03-18T12:11:47.930 回答