Toon posts:

[VB.NET] Items in combobox niet zichtbaar (zijn er wel)

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een vreemd probleem namelijk als ik mijn applicatie start zet ik bij de formLoad een
"call fillAllCombos()". In deze sub haal ik gegevens uit een database voor 4 combo's op het mainform.

Het vreemde is dat de items er WEL in staan, alleen dat de text niet zichtbaar is.

Als ik er gewoon willekeurig text inzet is deze ook niet zichtbaar. Ik weet niet goed waar dit aan kan liggen. Heeft iemand zoiets al ooit gezien?

  • whoami
  • Registratie: December 2000
  • Laatst online: 06-05 15:36
Heeft iemand zoiets al ooit gezien?
ja.

https://fgheysels.github.io/


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Hoe weet je dan dat ze erin staan als je ze niet kunt zien?

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • whoami
  • Registratie: December 2000
  • Laatst online: 06-05 15:36
rwb schreef op woensdag 04 mei 2005 @ 12:59:
Hoe weet je dan dat ze erin staan als je ze niet kunt zien?
Omdat het type van de items er zal instaan....

https://fgheysels.github.io/


Verwijderd

Topicstarter
haha.. nee ik kan namelijk wel scrollen in de lijst en een item selecteren, dan verschijnt ook de text in de combobox. Verder staat er ook niet het type in, maar gewoon niks... nada.. empty..

ik google me suf, maar ik weet eigenlijk niet goed waar ik op moet zoeken... combobox items empty etc. geven niet de gewenste zoekresultaten.

  • D4Skunk
  • Registratie: Juni 2003
  • Laatst online: 20-10-2025

D4Skunk

Kind of Blue

misschien selecteditem eens proberen ?

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 05-02 21:24
Je DisplayMember zal waarschijnlijk naar een property verwijzen die geen waarde heeft, dat is de enige manier waarop ik een combobox krijg waar wel items in zitten maar die niet te zien zijn.

Geef anders wat meer informatie cq code hoe je de combobox instelt en vult.

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
whoami schreef op woensdag 04 mei 2005 @ 13:01:
[...]


Omdat het type van de items er zal instaan....
Dan zie je ze toch gewoon staan. Dat je niet de data ziet die je wilt is een tweede, maar daar vraagt hij niet om :)

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Verwijderd

Topicstarter
ik roep dit bv. aan in de Load van het form.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  Private Sub fillStatusFilter()
        Dim myCommand As New OdbcCommand()
        Dim sql As String

        sql = "SELECT * From Statussen ORDER BY StatusOmschrijving"

        myCommand.Connection = Connect.DatabaseConnection

        myCommand.CommandText = sql.ToLower
        Try
            If myDataReader Is Nothing Then
                myDataReader = myCommand.ExecuteReader()
            Else
                If myDataReader.IsClosed() Then
                    myDataReader = myCommand.ExecuteReader()
                Else
                    myDataReader.Close()
                    myDataReader = myCommand.ExecuteReader()
                End If
            End If
        Catch e As Exception
            MessageBox.Show(e.ToString)
        Finally
        End Try


        cmbStatusFilter.Text = "*.*"

        cmbStatusFilter.Items.Add("*.*")
        While myDataReader.Read()
            Try
                cmbStatusFilter.Items.Add(myDataReader.GetString(1))
            Catch es As Exception
                MessageBox.Show(es.ToString)
            End Try
        End While
        myDataReader.Close()

    End Sub


als je displaymember bedoelt bij de properties van de combobox; die staat op none. dat is volgens mij standaard.

  • CyberThijs
  • Registratie: Maart 2004
  • Laatst online: 22:10
Controleer eens wat er komt uitgepiept net voor cmbStatusFilter.Items.Add(myDataReader.GetString(1)) als je dit ervoor plaatst:
code:
1
Msgbox("Output: """ & myDataReader.GetString(1) & """")

Indien je enkel Output: "" te zien krijgt zit daar je probleem..

  • D4Skunk
  • Registratie: Juni 2003
  • Laatst online: 20-10-2025

D4Skunk

Kind of Blue

probeer de text property eens te zetten nadat je de combobox hebt opgevuld

Verwijderd

Topicstarter
CyberThijs schreef op woensdag 04 mei 2005 @ 15:56:
Controleer eens wat er komt uitgepiept net voor cmbStatusFilter.Items.Add(myDataReader.GetString(1)) als je dit ervoor plaatst:
code:
1
Msgbox("Output: """ & myDataReader.GetString(1) & """")

Indien je enkel Output: "" te zien krijgt zit daar je probleem..
hmm... ja daar krijg ik inderdaad een aantal lege messageboxen voor terug, maar het vreemd is dan dat als je dan in de combo kijkt de gegevens er wel in staan. Het lijkt wel of het iets te maken heeft met een vertraging in de connectie/opbouw scherm ofzo.


maar met een debugsessie zie ik wel dat hij iets ophaalt.

[ Voor 11% gewijzigd door Verwijderd op 04-05-2005 16:43 ]


Verwijderd

Topicstarter
Ah, volgens mij heb ik het opgelost.

Ik heb in de dsn connectie "don't cache results (forward cursor only)" aangevinkt, en tot nu toe komen de gegevens erin!


Sh*t, blijkt na compilen niet meer zo te zijn. Start wel sneller op in ieder geval. Als ik een keer met de wheelmouse door de combo scroll, staan de gegevens er gewoon...

[ Voor 39% gewijzigd door Verwijderd op 04-05-2005 16:51 ]


Verwijderd

Topicstarter
Ok, ik heb ontdekt waar het aan ligt. Het kwam door mcafee8 en die hebben er ook een patch voor...

http://sdownload.nai.com/...ected/hotfix/VSE80P09.Zip
Pagina: 1