Profiel van Radu-CristianRaducu's blogFoto'sWeblogLijsten Extra Help
    15 september

    DropDownList data binding BUG

     
      Today I've spent more than one hour trying to solve the following issue: I have a DropDownList control and I bind a collection of objects and then I set the SelectedValue to the first value from the collection. Here is the piece of code I've used:
     
    ddlControl.DataSource = myCollection;
    ddlControl.DataTextField = "Text";
    ddlControl.DataValueField = "Value";
    ddlControl.DataBind();
    ddlControl.SelectedValue = "1";
     
      Everything was fine, but when I tried to rebind the same control to another collection of the same objects (a subcollection), I got the following error:
    'ddControll' has a SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value.
     
      This is a BUG and I solved this issue by replacing the code with a foreach statement and I added manually each item to the collection of Items.
    ddlControl.Items.Clear();
    foreach (Item item in items)
    {
        ddlControl.Items.Add(new ListItem(item.Text, item.Value));
    }
    ddlControl.SelectedValue = "0";
     
     

    (3) reacties

    Een ogenblik geduld...
    De reactie die je hebt ingevoerd is te lang. Maak hem iets korter.
    Je hebt niets ingevoerd. Probeer het opnieuw.
    We kunnen je reactie nu niet toevoegen. Probeer het later opnieuw.
    Je hebt toestemming van je ouders nodig om een reactie toe te voegen Toestemming vragen
    Je kunt geen reacties geven omdat je ouders dit hebben uitgeschakeld.
    We kunnen je reactie nu niet verwijderen. Probeer het later opnieuw.
    Je hebt het maximale aantal reacties overschreden dat je elke dag kunt versturen. Probeer het over 24 uur nog eens.
    De mogelijkheid om reacties te geven is uitgeschakeld voor je account omdat onze systemen aangeven dat je spam naar andere gebruikers verzendt. Als je van mening bent dat je account ten onrechte is uitgeschakeld, kun je contact opnemen met de klantondersteuning van Windows Live.
    Voer de beveiligingscontrole hieronder uit om een reactie achter te laten.
    De tekens die je typt moeten overeenkomen met die in de afbeelding of het audiofragment.

    Meld je aan bij Windows Live ID om een reactie toe te voegen (als je Hotmail, Messenger of Xbox LIVE gebruikt, heb je al een Windows Live ID). Aanmelden


    Heb je geen Windows Live ID? Maak er nu een aan

    imgzegt:
    sree reddy
    software Engineer.
    25 Juni
    Afbeelding van Anoniem
    Robz zegt:
    I have come across something familiar, and rebinding is part of what causes the error. The other part of what causes the error is a postBack.
    7 Mar.
    Afbeelding van Anoniem
    AlexanderMinza zegt:
    Maybe AddRange would be better than the foreach :)
    26 Sept.

    Links naar je weblog

    De URL voor de link naar dit weblogitem is:
    http://alexaraducristian.spaces.live.com/blog/cns!97400EE604B4E02D!161.trak
    Weblogs die naar dit item verwijzen
    • Geen
    *