Salve a tutti.
Dopo aver risolto il precedente problema della select ora tanto per cambiare ne ho un altro XD
quando seleziono una data dal calendario eseguo una select per controllare se ci sono già dei promemoria per quella data, e se si elencarli in una listbox.
Ho notato che mi succede una cosa strana: il primo risultato viene scritto due volte, mentre l'ultimo viene perso.. se ad esempio per la data del 2 agosto ho i promemoria
test
test2
test3

nella listbox mi stampa le righe in questo modo
test
test
test2

prima di ogni riempimento azzero la textbox.

Eccovi un pò di codice

codice:
    Public Sub Controlla_Data(ByVal selectedDate As Date)
        Dim controlla As Odbc.OdbcCommand
        Dim List As Odbc.OdbcDataReader
        Dim SQL As String = "select message from promemoria where data = '" + DataOnly(selectedDate).ToString + "'"
        controlla = New Odbc.OdbcCommand(SQL, Conn)
        Conn.Open() 'Conn è dichiarato globale
        List = controlla.ExecuteReader()
        If List.HasRows Then
            Label3.Text = "Numero promemoria per il giorno selezionato : " + List.RecordsAffected.ToString
            ListBox1.Items.Clear()
            For i = 1 To List.RecordsAffected
                ListBox1.Items.Add(List.GetValue(0).ToString())
                List.Read()
            Next
        Else
            ListBox1.Items.Clear()
            Label3.Text = "Nessun promemoria presente per il giorno selezionato"
        End If
        List.Close()
        Conn.Close()
    End Sub
DataOnly è una semplice funzioncina per formattare la data per usarla comodamente con postgres, se vi serve.. (non penso XD)
codice:
    Public Function DataOnly(ByVal Data As String) As String
        Return Format(DateTime.Parse(Data), "dd/MM/yyyy")
    End Function
debuggando passo passo non mi sembra che ci siano dei problemi. sembra quasi che mi salti una read().

Spero che il problema sia di facile soluzione, almeno per voi
Grazie in anticipo. Cordiali saluti