Hellou
ListBox ongelmaa taas hieman. box1 josta valitaan case4. Tämän jälkeen box ja ja box 3 listaavat vaihtoehdot. tähän asti koodini toimii ihan hyvin.
en saa päivittymään kunnolla boxi kolmosen tietoja kun valitaan kakkosesta jotain.
Esim allaolevakoodi toimii hyvin kun boxi kakkosessa on 1a kolmosessa on valittuna esim 1a2 ja painetaan boxista2 1b niin boxi kolmosen tiedot päivittyvät ja on valittuna 1b1.
ongelma on että jos boxi 2een on valittuna 1a ja box 3. 1a1 ja vaihdetaan box kakkoseen 1b niin boxi kolmosen tiedot eivät päivity
3kpl list boxeja
1st 2nd 3th
1 1a 1a1
1a2
1b 1b1
1b2
1b3
1b4
1c 1c1
1c2
2 1a 1a1
jne..
Olen kokeillut jo jos jonkinnäköstä update refresh hommaa huonoin tuloksin
Private Sub KojeenYläpuoli_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KojeenYläpuoli.SelectedIndexChanged
If KojeenValinta.SelectedIndex = 4 Then
Select Case KojeenYläpuoli.SelectedIndex
Case 0
If KojeenYläpuoli.SelectedIndex = 0 Then
KojeenAlapuoli.SelectedIndex = 0
KojeenAlapuoli.Update()
Refresh()
KuvaYläpuoli.Image = System.Drawing.Image.FromFile("c:\kuvat\KatASAmalliY1.bmp")
Laskenta.PictureBox1.Image = System.Drawing.Image.FromFile("c:\kuvat\MKatASAmalliY1.bmp")
KuvaAlapuoli.Visible = True
Else
KuvaYläpuoli.Visible = False
End If
Case 1
If KojeenYläpuoli.SelectedIndex = 1 Then
KojeenAlapuoli.SelectedIndex = 0
KojeenAlapuoli.Update()
KuvaYläpuoli.Image = System.Drawing.Image.FromFile("c:\kuvat\KatASBmalliY1.bmp")
Laskenta.PictureBox1.Image = System.Drawing.Image.FromFile("c:\kuvat\MKatASBmalliY1.bmp")
KuvaYläpuoli.Visible = True
Else
KuvaYläpuoli.Visible = False
End If
End Select Private Sub KojeenAlapuoli_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KojeenAlapuoli.SelectedIndexChanged
If KojeenValinta.SelectedIndex = 4 Then
Refresh()
KojeenAlapuoli.Update()
KuvaAlapuoli.Refresh()
If KojeenYläpuoli.SelectedIndex = 0 Then
' KojeenAlapuoli.SelectedIndex = 0
Select Case KojeenAlapuoli.SelectedIndex
Case 0
If KojeenAlapuoli.SelectedIndex = 0 Then
KuvaAlapuoli.Image = System.Drawing.Image.FromFile("c:\kuvat\KatASAmalliA1.bmp")
Laskenta.PictureBox2.Image = System.Drawing.Image.FromFile("c:\kuvat\MKatASAmalliA1.bmp")
KuvaAlapuoli.Visible = True
Refresh()
Else
KuvaAlapuoli.Visible = False
End If
Case 1
If KojeenAlapuoli.SelectedIndex = 1 Then
KuvaAlapuoli.Image = System.Drawing.Image.FromFile("c:\kuvat\KatASAmalliA2.bmp")
Laskenta.PictureBox2.Image = System.Drawing.Image.FromFile("c:\kuvat\MKatASAmalliA2.bmp")
KuvaAlapuoli.Visible = True
'Laskenta.GrpAlapuoliMittaustulokset.Visible = False
Else
KuvaAlapuoli.Visible = False
' Laskenta.GrpAlapuoliMittaustulokset.Visible = True
End If
End Select
End Ifapuja / ideoita ?
HALOO Puoliväkisten!
Joo synkronoi vaan kaikki boxit keskenään iskemällä joka boxin SelectedIndex_tapahtumaan koodi joka päivittelee kerralla kaikkien boxien valittua indexiä niin takuuvarmasti kaikki alkaa pelittämään juuri kuten olit [ajatellutkin]
Tuohon kysymykseen on aika rasittavaa yritä vastata, kun puhut selostuksessa boxi 1:stä ja boxi 2:sta ja boxi 3:sta, mutta koodissa ei ole mitään vastaavia.
Millä tekniikalla nuo listboksit päivittyy? Tuossa käsket kaikenlaita refresh, yms, mutta eihän ne itsessään mitään tee.
Josko koittaisin yksinkertaistaa kysymystä... :)
on kolme listboxia. Ensimmäisestä valitaan näkyviin vaihtoehdot listbox kakkoseen ja kolmoseen.
kun boxi kakkosesta valitaan jotain päivittyy boxi kolmosen tiedot.
Tämäntyyppinen homma toimii tällähetkellä (vaikka ei heti uskois). Päivitän siis listbox kolmosta kun valitsen listbox kakkosesta jotain
päivitän listan seuraavasti:
listbox3.SelectedIndex = 0
Homma toimii kun listbox kakkosessa on valittuna jokin muu kuin case 0 ja vaihdetaan listbox2:sta esim case0-->1 niin listbox kolmosen tiedot päivittyvät
keksinkin tähän aivan idioottimaisen ratkaisun :)
päivitän listbox3 listaa ensin indeksiin 1 ja tämänjälkeen indeksiin 0 ja homma toimii haluamallani tavalla. hyvä mä :D
Kieltämättä aloitukseni oli hanurista....
Aihe on jo aika vanha, joten et voi enää vastata siihen.