1. #1
    RedNex's Avatar
    Registered
    18/04/03
    Posts
    225
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0

    ASP.NET: Probleem met values van dropdownlist

    Hey,

    Ik ben al een hele tijd aan't zoeken achter een oplossing voor het volgende probleem. Ik ben een website aan't ontwikkelen in ASP.NET C# en wens nu dynamisch een dropdownlist op te vullen. Niet moeilijk op het eerste zicht, maar er doet zich iets vreemds voor.

    Op de volgende screenshot kan je een item zien van de list waarmee ik mijn dropdownlist opvul. Merk op dat hier voor "Text" --> "Kadetten" staat, en voor "Value" --> "3".

    Screenshot 1

    Op de volgende screenshot laat ik de elementen zien die in mijn dropdownlist zitten op het moment dat ik deze wil aanspreken. Merk hier op dat de "Value" aangepast is...

    Screenshot 2

    Het was nu de bedoeling dat ik verder zou werken met de "3" die op screenshot 1 te zien was, maar deze waarde is dus blijkbaar aangepast, en ik heb geen enkel idee waarom, of wat daar de oorzaak van is. Iemand die dit wel weet?

    Alvast bedankt
    no votes  

  2. #2

    Registered
    08/11/03
    Location
    Antwerpen
    Posts
    1,726
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    2/2
    Kan je voor uw dropdownlist geen waarde specifieren als het datavaluefield? Daar zet je gewoon de naam van de property van je data transfer object dat je als value wilt.

    Dus waarschijnlijk: cboPlayed.DataValueField = "ID"
    no votes  

  3. #3
    RedNex's Avatar
    Registered
    18/04/03
    Posts
    225
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Ik heb hierbij alle mogelijkheden geprobeerd...

    cboPlayed.DataValueField = "league.LeagueId"
    cboPlayed.DataValueField = "LeagueId"
    cboPlayed.DataValueField = "list[1]"
    zelfs
    cboPlayed.DataValueField = list[1].toString()

    Met of zonder aanhalingstekens, ik vind geen combinatie die werkt...

    EDIT:

    Eindelijk een oplossing gevonden:

    Nu bleek dus dat alles in een ListItemCollection duwen een probleem was. Als ik mijn ListItems rechtstreeks aan mijn combobox toevoeg, is het probleem opgelost. Blijkbaar past die ListItemCollection iets aan aan mijn value ofzo...

    League league;
    for (int i = 0; i < League.ListAll().Count; i++)
    {
    league = League.ListAll()[i] as League;
    ListItem item = new ListItem(league.Name, league.LeagueId.ToString());
    cboPlayed.Items.Add(item);
    }
    cboPlayed.DataBind();
    Greetz
    Last edited by RedNex; 14-08-2007 at 14:40. Reason: Oplossing gevonden
    no votes  

  4. #4

    Registered
    08/11/03
    Location
    Antwerpen
    Posts
    1,726
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    2/2
    Kan je het ook niet zo?

    Code:
    League leagues() = League.GetAll();
    
    cboPlayed.DataValueField = "LeagueId";
    cboPlayed.DataTextField = "Name";
    cboPlayed.DataSource = leagues;
    cboPlayed.DataBind();
    Dus gewoon alle leagues ophalen en in een array van het type league duwen. Vervolgens value en textfield zetten. Daarna binden.
    no votes  

  5. #5
    Boddah's Avatar
    Registered
    25/11/03
    Location
    Antwerpen
    Posts
    2,757
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/3
    Idd, zo zou het ook moeten gaan en moet je geen lus doorlopen.
    Free online cycling manager
    no votes  

  6. #6
    RedNex's Avatar
    Registered
    18/04/03
    Posts
    225
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Quote Originally Posted by Obliv` View Post
    This quote is hidden because you are ignoring this member. Show
    Kan je het ook niet zo?

    Code:
    League leagues() = League.GetAll();
    
    cboPlayed.DataValueField = "LeagueId";
    cboPlayed.DataTextField = "Name";
    cboPlayed.DataSource = leagues;
    cboPlayed.DataBind();
    Dus gewoon alle leagues ophalen en in een array van het type league duwen. Vervolgens value en textfield zetten. Daarna binden.
    Werkt ook perfect, en is een betere oplossing.

    Bedankt!

    RedNex
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in