Avatar billede spottie Nybegynder
15. maj 2006 - 14:28 Der er 10 kommentarer og
1 løsning

Gennemløb af arraylist, hvordan?

Hej Eksperter

Jeg har en arraylist, og i den skal jeg så have den enkelte værdier ud så jeg kan sammenligne dem, jeg har lavet en forlykke som fint tæller op, men hvordan er syntaxen for at sige at den skal løbe arraylisten i gennem og sættes værdierne i den ud som en streng?

Jeg håber nogen kan hjælpe med lidt syntax hjælp her.

spottie
Avatar billede spif2001 Nybegynder
15. maj 2006 - 14:30 #1
foreach(string s in arrayList)
{

}
Avatar billede spif2001 Nybegynder
15. maj 2006 - 14:32 #2
Kræver at det er strings der ligger i listen eller for du en typecast exception.
Avatar billede spif2001 Nybegynder
15. maj 2006 - 14:32 #3
ellers får*
Avatar billede dr_chaos Nybegynder
15. maj 2006 - 14:40 #4
normael ligger der objekter i en arraylist


foreach(object o in dinArraylist)
{
o.ToString();
}
Avatar billede spottie Nybegynder
15. maj 2006 - 14:55 #5
Jeg har dette stykke kode:

ArrayList liste1 = new ArrayList();
DataRowCollection drc = ds.Tables[0].Rows;

for(int i = 0; i < drc.Count; i++)
{
DataRow dr = drc[i];
string test1 = dr["a_id"].ToString();
liste1.Add(test1);

foreach(object test12 in liste1)
{
string testfinal = test12.ToString();
if(test1 != testfinal)
{
liste1.Add(test1);
}
}

liste1.Sort();
}

cb.Text = "Vælg...";
cb.Items.Add(liste1);

Det som jeg skal er jeg skal have gjort således at der skrives a_id til en combobox, men hvis det er "add" en gang skal det ikke "add's" igen?

Men når jeg prøver dette så får jeg en fejl i ComboBox som hedder: System.Collections.ArrayList.¨

Men den "add" stadig selvom værdier er forskellige, og med ovennævnte fejl.

Nogen der hjælpe mig på rette vej?

spottie
Avatar billede spif2001 Nybegynder
15. maj 2006 - 15:02 #6
Kan du ikke bare:

[Code]
DataRowCollection drc = ds.Tables[0].Rows;

foreach(DataRow dr in drc)
{
  cb.Items.Add(dr["a_id"].ToString());
}
cb.Text = "Vælg..."
[/Code]
Avatar billede spottie Nybegynder
15. maj 2006 - 15:17 #7
spif2001... jo kan man godt men så kan man riskere at den samme a_id kommer flere gang hvis man nu trykker to gange på navnet i den listbox den refere til, så står det i comboboxen 2 gange.

Men kan du så hjlælpe med lidt kode til at hvis det findes en gang i combobox så skal det ikke "add's" igen?

spottie
Avatar billede spif2001 Nybegynder
15. maj 2006 - 15:19 #8
Prøv det her:

[Code]
DataRowCollection drc = ds.Tables[0].Rows;

foreach(DataRow dr in drc)
{
  if(!cb.Items.Contains(dr["a_id"].ToString()))
    cb.Items.Add(dr["a_id"].ToString());
}
cb.Text = "Vælg..."
[/Code]
Avatar billede spottie Nybegynder
17. maj 2006 - 13:44 #9
post svar for point

spottie
Avatar billede spif2001 Nybegynder
17. maj 2006 - 13:47 #10
svar
Avatar billede spif2001 Nybegynder
24. maj 2006 - 09:15 #11
ok?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester