Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20

    vb.net come si riempe una textbox selezionando un elemento di una listbox?

    Ciao a tutti ho un problema: sto costruendo un'interfaccia windows di un database e ho una list box di persone e vorrei riempire una textbox con ad esempio il sesso della persona su cui clicco nella listbox!! avete suggerimenti?? qui vi metto il codice....


    Imports System.Data.SqlClient
    Public Class Form1
    Dim conn As New SqlConnection("Data Source=PC-MATTEO\SQLEXPRESS;Initial Catalog=Proposta_Soluzione_1;Integrated Security=True")

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim str As String = "SELECT Nome + ' '+ cognome as Persona FROM Persone"
    Dim cmd As New SqlCommand(str, conn)
    Dim da As New SqlDataAdapter(cmd)
    Dim ds As New DataSet

    da.Fill(ds, "Persone")
    Pazienti.DataSource = ds.Tables("Persone")
    Pazienti.DisplayMember = "Persona"



    Dim st As String = "SELECT Nome + ' ' + Cognome as Medico FROM Persone " 'WHERE ID_Ruolo = 4"

    Dim dset As New DataSet
    Dim cm As New SqlCommand(st, conn)
    Dim dad As New SqlDataAdapter(cm)
    dad.Fill(dset, "Persone")

    ComboBox1.DataSource = dset.Tables("Persone")
    ComboBox1.DisplayMember = "Medico"



    End Sub
    Private Function EseguiReadParametrica( _
    ByVal pSQL As String, _
    ByVal pCommand As SqlClient.SqlCommand) _
    As SqlClient.SqlDataReader

    Dim myConnection As SqlClient.SqlConnection
    Dim nroRecord As Integer
    Dim myStrConn As String

    Try

    ' creazione esplicita della connessione
    myConnection = New SqlClient.SqlConnection()
    myStrConn = BuildConnectionString()
    myConnection.ConnectionString = myStrConn
    myConnection.Open()
    ' passaggio della connessione attiva
    ' all'oggetto Command
    pCommand.Connection = myConnection

    ' definizione del tipo di comando
    pCommand.CommandType = CommandType.Text

    ' assegnazione della stringa comando
    pCommand.CommandText = pSQL

    ' esegue il comando di lettura
    EseguiReadParametrica = pCommand.ExecuteReader

    Catch thisExcept As Exception
    ' se il tentativo di connessione fallisce
    ' viene visualizzata l'eccezione
    MessageBox.Show(thisExcept.Message, _
    "EseguiReadParametrica()")
    End Try

    End Function


    Private Sub CaricaFormCollection()

    Dim myPaziente As Paziente

    ' oggetto clsProdotto selezionato
    ' nella ListBox Pazienti
    myPaziente = CType( _
    Pazienti.SelectedItem, Paziente)


    Try

    With myPaziente

    ' TextBox1.Text = .ID_Pers
    TextBox2.Text = .Nome


    ' seleziona il fornitore nel Combo cboFornitori
    ' CercaItemInCombo(cboFornitori, .IdFornitore)

    'seleziona la categoria nel Combo cboCategorie
    'CercaItemInCombo(cboCategorie, .IdCategoria)

    End With

    Catch thisExcept As Exception
    MessageBox.Show(thisExcept.Message, _
    "CaricaFormCollection")
    End Try

    End Sub

    Private Sub CaricaListBoxClassLong()


    Dim myDataReader As SqlDataReader
    Dim mySQL As String
    Dim myCommand As SqlCommand
    Dim myPaziente As Paziente

    ' testo della query
    mySQL = "SELECT Nome, " & _
    "FROM Persone "
    ' creazione del comando
    myCommand = New SqlClient.SqlCommand()

    Try

    ' esecuzione della query
    myDataReader = _
    EseguiReadParametrica(mySQL, myCommand)

    ' svuota il contenuto del controllo lstProdotti
    Pazienti.Items.Clear()

    ' scorre i dati estratti leggendo il DataReader
    Do While myDataReader.Read

    ' crea un'istanza della classe clsProdotto
    Dim myPaziente = New Paziente()

    With myDataReader

    ' valorizza tutte le proprietà
    ' dell'oggettto myProdotto leggendo il
    ' valore dei campi estratti dalla query

    myPaziente.Nome = _
    .Item("Nome").ToString()

    End With

    ' aggiunge l'oggetto myProdotto alla
    ' lista dei prodotti lstProdotti
    Pazienti.Items.Add(myPaziente)

    Loop

    ' chiude la connessione
    myCommand.Connection.Close()

    ' seleziona il primo oggetto della lista
    If Pazienti.Items.Count > 0 Then
    Pazienti.SetSelected(0, True)
    End If

    Catch thisExcept As Exception
    myCommand.Connection.Close()
    MessageBox.Show(thisExcept.Message, _
    "CaricaListBoxClassLong")
    End Try
    End Sub
    End Class

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    devi rimanere in ascolto dell'evento itemChanged (o simile) li potrai avrere l'item selezionato e usarlo come meglio credi

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    Dove lo trovo l'evento Itemchanged?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Utilizza l'evento Click della Listbox ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    Ok e li cosa ci devo mettere?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Assegni alla Textbox che vuoi tu il valore corrente della Listbox ... (a proposito ... quale sarebbe questa ListBox ? Dal codice non si capisce molto ...)

    Se non conosci come si usano questi due (elementari) controlli, ti consiglio di dare un'occhiata ad un libro di testo di base prima di intraprendere lavori del genere ...

    (Un po' di intraprendenza ... in un forum si danno anche delle dritte, non indicazioni passo-passo ... poi devi provare anche tu a scrivere qualcosa ...)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    Scusa ma sono nuova!!

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    Ma il valore corrento lo assegno con listbox.selectiditem?

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    Originariamente inviato da magr88
    Scusa ma sono nuova!!

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Quando ti dicevo dell' "intraprendenza" mi riferivo proprio alle prove che dovresti fare da sola ...

    Cosa ti costa provare quello che pensi possa funzionare, invece che postare nel forum preventivamente?

    Se qualcosa non funziona, allora usa il forum spiegando cosa hai fatto e cosa non va ...

    Così si impara ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.