0

私のコードが行うことは、EntityDataSource が最初の DropDownList に関連付けられた Where パラメータを持ち、2 番目の DropDownList にデータを入力するということですが、最初の DDL が変更されても、EntityDataSource は 2 番目の DDL の値を変更しません。

これは、UpdatePanel 内にある ModalPopupExtender 内にあることに注意してください。

おそらく、すべてのデータを2番目の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

呼び出す:

PlanKitDropDownList.DataBind()
于 2011-03-18T12:11:47.930 に答える
0

SelectedIndexChanged Event最初のものに追加しDropDownList、2番目のものを再バインドします

于 2011-03-18T12:05:34.587 に答える