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

    Come Inserire in una textbox i dati di un elemento selezionato da una listbox

    Ciao a tutti, devo creare un'applicazione windows da un database e sono 4 giorni che sono bloccata su un punto : data una listbox con dei nomi di persona, voorei che nelle textbox da me definite apparissero i dati della persona che ho selezionato, presi dal database! vi allego il codice e spero che qlcuno sia cpsi geniale da trovare il problema!! grazieee

    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 Sub Aggiungi_Paziente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Aggiungi_Paziente.Click
    Dim frm2 As New Form2()
    frm2.Show()
    End Sub


    Public Class Paziente

    Private pNomePaziente As String
    Private pId_Pers As Integer


    Public Sub New()

    End Sub

    Public Sub New( _
    ByVal Nome As String, _
    ByVal ID_Pers As Integer)

    ' si assegna il valore alle proprietà
    ' IdProdotto e NomeProdotto
    pId_Pers = ID_Pers
    pNomePaziente = Nome

    End Sub

    Property Nome() As String
    Get
    Return pNomePaziente
    End Get
    Set(ByVal Valore As String)
    pNomePaziente = Valore
    End Set
    End Property

    Property ID_Pers() As String
    Get
    Return pId_Pers
    End Get
    Set(ByVal Valore As String)
    pId_Pers = Valore
    End Set
    End Property

    Public Overrides Function ToString() As String
    Return pNomePaziente
    End Function

    End Class


    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 Pazienti_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Pazienti.DoubleClick
    CaricaFormCollection()
    End Sub
    End Class

  2. #2
    scusa ma nn ho ben capito, vuoi passare i dati da 1 listbox a delle textbox? li vuoi passare tutti o solo qnd selezioni il valore? se li vuoi passare tutti basta ke scorri gli item della tua listbox con 1 qualsiasi ciclo, foreach (x esempio) di object su listbox.item e poi dentro a qst ciclo ci metti i valori trasformandoli in stringhe
    in pseudo codice tipo
    int i=0;
    foreach (object x in listbox1.item)
    {
    if (i==0)
    textbox1.text=x.tostring();
    else
    (i==1)
    textbox2.text=x.tostring();
    i++;
    }
    per qnt textbox hai, oppure se vuoi crearle dinamicamente basta che crei 1 lista di textbox e poi le crei 1 ad 1 dentro al ciclo foreach e poi le inserisci dentro alla lista

    se invece vuoi inserire qnd selezioni 1 dato nella textbox basta che definisci il metodo onitemchange (o 1 metodo molto simile) sulla listbox e poi fai listbox.selecteditem.tostring() e lo metti nella textbox

    spero che tu possa risolvere il tuo problema, se hai dei dubbi o ho capito male scrivmi pure ^_^
    Zeroradio V2.. Dove Trovi di Meglio???

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    Grazie x aver risposto cmq la mia intenzione credo sia l'ultima che hai detto ossia: ho una listbox cn il nome e il cognome dellepersone del database e vorrei k cliccando su una di queste mi apparissero nella textbox ad esempio il sesso e la data di nascita... cm vedi dal codice ho provato ad utilizzare listbox.selecteditaem ma non mi fa niente..
    NON SO PIù COME FARE!!!!!!!!!!!!!!!!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Per prima cosa va indicato il linguaggio. (presumo VB.NET)
    Per seconda cosa diciamo, che come è gia stato detto miglioni di volte il codice va scritto all'interno dei relativi Tags:

    codice:
    'Codice

    Secondo hai scritto:
    codice:
    Dim myPaziente As Paziente
    Ma non creato da nessuna parte un'istanza di quella classe, quindi non ne puo leggere le proprietà, quindi siccome hai creato un'overloads del metodo 'New' dovresti scrivere:

    codice:
    Dim myPaziente As Paziente
    oppure

    codice:
    Dim myPaziente As Paziente ("Mario",4)

    Vorrei sapere a cosa serve questo codice:

    codice:
    myPaziente = CType( _
    Pazienti.SelectedItem, Paziente)
    VVoVe: VVoVe:

    Cioè vuoi convertire una proprietà/evento che non esiste in una classe ??!!

    Se parliamo di VB.NET

    codice:
    Pazienti.SelectedItem
    Ne ListBox ne ComboBox hanno suddetto evento/proprietà ??!!
    Da dove viene ?

    Inizia con questo!
    Sbagliare è umano, perseverare è diabolico.

  5. #5
    allora partiamo dalla base, qnd clicchi sulla listbox e metti 1 messagebox con dentro qlsiasi cosa te la scrive?cioe', cerco di spiegarmi meglio, hai associato l'evento che selezioni 1 oggetto ad 1 funzione e la hai provata?

    step2: fatto qst prova a mettere dentro alla messagebox listbox.selecteditem.tostring() e cosa ti dice?

    potresti forse anche fare 1 cosa e cioe' qnd selezioni 1 dato guardare nella listbox.selectedindex il valore selezionato e poi richiamarlo con listbox.item[numtrovato].tostring() comunque deve andare cn listbox.selecteditem.tostring()!!!
    Zeroradio V2.. Dove Trovi di Meglio???

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Ma avete letto quello che ho scritto/chiesto sopra???
    Sbagliare è umano, perseverare è diabolico.

  7. #7
    ehm? parli a me? cmq no qnd ho postato nn ho letto il tuo commento (x' nn c'era ancora) e sinceramente nn mi sn messo a guardare il codice x' era 1 po incasinato e io conosco c# e nn vb xo' so che di per certo mettere i dati in 1 listbox (se nn sbaglio ql ke ha kiesto) si dovrebbe fare cosi (come ho scritto), detto cio' se dentro in ql codice di magr88 c'è skritto in aramaico io nn lo so e se fosse cosi effettivamente prima di tutto andrebbe messo apposto ql che c'è cosi poi magari torna ad andare anche la funzione che da problemi
    Zeroradio V2.. Dove Trovi di Meglio???

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    20
    No gli elementi nella list box li ho gia messi, ho 2 text box vuote in cui vorrei che venisse scritto il sesso e la data di nascita della persona che ho selezionato, andando a pescare dal database

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Nei forum non si usano le abbreviazioni..... (qnd, cmq...ecc. ecc).
    E tu dai un suggerimento senza leggere neanche una linea di quello che hai scritto?

    Se mi spieghi dove prenedete:
    codice:
    listbox.selecteditem
    Sbagliare è umano, perseverare è diabolico.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Originariamente inviato da magr88
    No gli elementi nella list box li ho gia messi, ho 2 text box vuote in cui vorrei che venisse scritto il sesso e la data di nascita della persona che ho selezionato, andando a pescare dal database
    Non ho parole.........
    Sbagliare è umano, perseverare è diabolico.

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.