[C# .Net] Combobox wordt gevuld met dubbele items

Pagina: 1
Acties:

  • davhor
  • Registratie: Mei 2003
  • Laatst online: 02-12-2025

davhor

www.fon.com

Topicstarter
Ik heb in een windows applicatie een combobox staan die gevuldt wordt vanuit een xml bestand. In dit xml bestand komen values meerdere malen voor, maar ik wil deze maar 1 keer in mijn comboBox hebben.

Heeft iemand misschien een idee in welke hoek ik de oplossing kan vinden. 8)7

code:
1
2
3
4
5
6
7
8
9
10
void comboBoxFill()
        {
            DataSet ds = new DataSet();
            ds.ReadXml(@"d:/Projects/flightplan/xmltest.xml");
            comboBox1.DataSource = ds.Tables["flightplan"].DefaultView;

            comboBox1.SelectedIndex = 0;
            // Set Field Name you want to get data from
            comboBox1.DisplayMember = "Departure"; 
        }

FON - WiFi for Everyone | Flickr


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

Ik weet niet hoeveel opties je hebt met RowFilter property van je datatable, maar anders zou je hem zelf kunnen doorlopen en de items toevoegen aan de combobox.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • EfBe
  • Registratie: Januari 2000
  • Niet online
DataView heeft geen distinct filter mogelijkheden. Je zult dus de rijen met de hand moeten doorlopen in je dataset, de niet dubbele rijen in een nieuwe datatable importeren en die binden. Dubbelen filter je eruit door de waarden in een column een voor een in een Hashtable te stoppen (als key, value = null). Bij elke nieuwe rij kijk je eerst of teh hashtable de value al heeft als key. Indien ja, -> dubbel, indien nee, rij is uniek, moven naar andere table, en value adden aan je hashtable.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

Dubbelen filter je eruit door de waarden in een column een voor een in een Hashtable te stoppen (als key, value = null). Bij elke nieuwe rij kijk je eerst of teh hashtable de value al heeft als key. Indien ja, -> dubbel, indien nee, rij is uniek, moven naar andere table, en value adden aan je hashtable.
Waarom een hashtable en geen arrraylist, welke je controleert met Arraylist.Contains? Zit aan deze laatste methodiek een nadeel?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • EfBe
  • Registratie: Januari 2000
  • Niet online
Hashtable is vele malen sneller in het opzoeken van een value (middels een... hashtable! :)). ArrayList.Contains() fietst alle entries langs en voert entry.Equals(object) uit.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • davhor
  • Registratie: Mei 2003
  • Laatst online: 02-12-2025

davhor

www.fon.com

Topicstarter
Thx voor het op weg helpen. We gaan er mee aan de slag! _/-\o_

En het werkt!!!!!

[ Voor 15% gewijzigd door davhor op 05-01-2004 12:37 ]

FON - WiFi for Everyone | Flickr

Pagina: 1