2010-06-10 16 views
0

Donc je me bats avec beaucoup de petites choses dans l'application web donc je vérifie avec toutes sortes de choses pour m'assurer que je ne le casse pas cause de problèmes stupides.Mise à jour de la datalist dans un RadComboBox

À un certain moment dans mon application Web (en essayant de le garder la plupart du temps asynchrone) je dois mettre à jour la liste dans mon RadComboBox parce que quelque chose a été ajouté. Dois-je juste appeler à nouveau RadComboBox.DataBind()? Puisque je n'utilise pas explicitement sa source de données (je le fais dans l'insertion manuelle en utilisant une chaîne de caractères) objet pour insérer mon nouvel enregistrement dois-je dire à mettre à jour? La liste ne semble pas mettre à jour quand je viens appeler DataBind donc je me sens comme je dois avoir la revérifier source de données pour les entrées ou CHOSE

Merci

+0

Je ne suis pas sûr de comprendre tout ce qui se passe, pourriez-vous poster du code? –

Répondre

1

La façon formelle est d'utiliser l'événement NeedDataSource pour configurer votre la source de données. Lorsque vous voulez relier, il suffit d'appeler la méthode DataBind().

0

Je viens de rencontrer ce problème avec ma demande et je réussi à le résoudre en enveloppant le Combobox dans un panneau de mise à jour:

<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server"> 
        <telerik:RadComboBox 
        ID="txtSearch" runat="server" 
        Width="120px" Height="25px" 
        EmptyMessage="Type a Taxonomy" 
        ShowToggleImage="false" ShowDropDownOnTextboxClick="false" AllowCustomText="true" MarkFirstMatch="true" 
        > 
       </telerik:RadComboBox> 
       </telerik:RadAjaxPanel> 

et aussi DonT 4get pour ajouter le panneau de mise à jour dans le gestionnaire AJAX SCRIPT comme suit;

<telerik:RadAjaxManager runat="server" ID="RadAjaxManager1"> 
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1"> 
       <UpdatedControls> 
        <telerik:AjaxUpdatedControl ControlID="txtSearch" /> 
       </UpdatedControls> 
      </telerik:AjaxSetting> 

      </AjaxSettings> 
     </telerik:RadAjaxManager> 

Et pour plus assurer que les choses sont mises à jour à droite, donc à chaque fois qu'un élément est ajouté à la source qui est lié à la ComboBox alors u doivent appeler DataBind();

La méthode ci-dessus à jour le contrôle en utilisant Ajax qui signifie u ne devez pas faire après la page arrière ...

J'espère que je pourrais aider.