Dropdownlist dans un formview + sqldatasource
Bonjour,
J'ai deux formview utilis�s pour faire des ajout dans un gridview. Dans les formview, j'ai un dropdownlist qui permet � l'utilisateur de choisir une personne et ainsi de l'ajouter dans le gridview. Cette liste de personne est assez grosse (environ 2000) et il n'y a pas de moyen de la filtrer ou r�duire pour l'instant.
Le dropdownlist est branch� sur un SQLDataSource (Stored Proc sur SQL Server). Lors de l'ouverture de la page, les deux dropdownlist sont remplient avec la liste de personnes (il y a un petit d�lai mais c'est ok pour l'utilisateur).
Le probl�me est que le d�lai est aussi pr�sent � chaque insertion � partir du formview car il y a un postback et le SQLDataSource semble aller recharger tout la liste de personnes sur le serveur(J'utilises des updatepanel partout).
J'aimerais savoir si il y a une possibilit� d'aller chercher la liste des personnes et de remplir le dropdownlist seulement une seule fois et ne jamais perdre le contenu du dropdownlist lors d'un postback et ne pas aller recharger la liste � chaque postback.
Code:
1 2 3 4
|
<asp:SqlDataSource ID="sdsListePersonne" runat="server" ConnectionString="<%$ ConnectionStrings:DB_36624_hlm_ConnectionString %>"
SelectCommand="spListePersonne" SelectCommandType="StoredProcedure" DataSourceMode="DataReader"
OnSelecting="sdsListePersonne_Selecting"></asp:SqlDataSource> |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div style="height: 30px">
<asp:UpdateProgress ID="UpdateProgress3" AssociatedUpdatePanelID="UpdatePanel2" runat="server">
<ProgressTemplate>
<br />
Traitement des données, un moment S.V.P.
</ProgressTemplate>
</asp:UpdateProgress>
</div>
<asp:FormView ID="fvAjoutJoueurVisiteur" runat="server" DataSourceID="sdsJoueurVisiteur"
DataKeyNames="intIDSSJoueur" DefaultMode="Insert" ViewStateMode="Enabled">
<InsertItemTemplate>
Joueur :
<ajaxToolkit:ComboBox ID="insertddlFKintIDPersonne" runat="server" DataSourceID="sdsListePersonne"
DataTextField="strNomComplet" DataValueField="intIDPersonne" SelectedValue='<%# Bind("FKintIDPersonne") %>'
AutoCompleteMode="SuggestAppend" DropDownStyle="DropDownList">
</ajaxToolkit:ComboBox>
<br />
Position :<asp:DropDownList ID="insertddlFKintIDJoueurPosition" runat="server" DataSourceID="sdsListePosition"
DataTextField="strNomPosition" DataValueField="intIDJoueurPosition" SelectedValue='<%# Bind("FKintIDJoueurPosition") %>'>
</asp:DropDownList>
<br />
<asp:Button ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert"
ToolTip="Enregistrer" Text="Ajouter le joueur dans l'allignement visiteur" />
</InsertItemTemplate>
</asp:FormView>
</ContentTemplate> |
Je suis ouvert s'il y a d'autre solutions que d'utiliser un SQLDataSource et de faire du codebehind.
Merci beaucoup et bonne journ�e !