Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve
Dopo quasi un mese di utilizzo quotidiano e un viaggio medio-lungo in autostrada, raccontiamo pregi e limiti della Geely EX5: comfort premium, batteria LFP da 60,22 kWh, autonomia fino a 430 km e un prezzo che parte da 38.900 €
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-11-2003, 16:40   #1
race2
Senior Member
 
Iscritto dal: Aug 2000
Messaggi: 1209
[VB.NET] TreeView con 2 valori differenti !!!

Salve!

Vorrei assegnare ad un "TreeView" 2 valori differenti estratti da una
tabella di un Database, tipo:

"ID_Articolo" e "Articolo"

in modio da visualizzare nei nodi il campo "Articolo", ma poi cliccando nel
nodo estrarre il valore del campo "ID_Articolo", in modo da poterci fare
delle QUERY con quell' ID_Articolo.

Private Sub TreeView1_DoubleClick(ByVal sender As Object, ByVal e As
System.EventArgs) Handles TreeView1.DoubleClick

MsgBox(TreeView1.SelectedNode.Text)

End Sub



E' possibile assegnare 2 valori differenti ad un nodo ??? e poi estrarli ???
se si come ???
race2 è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 18:00   #2
race2
Senior Member
 
Iscritto dal: Aug 2000
Messaggi: 1209
Come posso aggiustare questo codice ???
Mi hanno dato una mano fino a qui'
, mica ci si puo' fare qualcosa qui ???


Codice:
 
Private oConn As New SqlConnection("Data Source=127.0.0.1,1433; Network Library=DBMSSOCN; Initial Catalog=Web_Monster; User ID=sa; Password=;") 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 

Dim myNode As New MyNode() 

TreeView1.BeginUpdate() 
TreeView1.Nodes.Clear() 

oConn.Open() 
Dim oComm As New SqlCommand("SELECT ID_Pratica FROM Pratiche ORDER BY ID_Pratica ASC", oConn) 
Dim oRead As SqlDataReader = oComm.ExecuteReader 
While oRead.Read() 
myNode.myProp1 = oRead("ID_Pratica") 
TreeView1.Nodes.Add("Pratica N. " & myNode.myProp1) 

End While 
oConn.Close() 

TreeView1.EndUpdate() 

End Sub 

Public Class MyNode : Inherits TreeNode 
Public myProp1, MyProp2, MyProp3 As String 
End Class 

Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect 
Dim Node As MyNode = DirectCast(TreeView1.SelectedNode, MyNode) 
Dim s As String = Node.myProp1 
MsgBox(s) 
End Sub
race2 è offline   Rispondi citando il messaggio o parte di esso
Old 26-11-2003, 16:14   #3
race2
Senior Member
 
Iscritto dal: Aug 2000
Messaggi: 1209
Eccolo finalmente funziona tutto !!!!!!!

Solamente che non riesco a estrarre i valori contenuti nelle proprieta' delle classi in base al Nodo cliccato.



Codice:
    Private sConn As String = "Data Source=127.0.0.1,1433; Network Library=DBMSSOCN; Initial Catalog=Web_Monster; User ID=sa; Password=;"
    Private oConn As New SqlConnection(sConn)
    Private oConn1 As New SqlConnection(sConn)
    Private oConn2 As New SqlConnection(sConn)

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim n1 As TreeNode
        Dim n2 As TreeNode
        Dim n3 As TreeNode

        TreeView1.BeginUpdate()
        TreeView1.Nodes.Clear()

        '-- estrazione Pratiche inizio
        oConn.Open()
        Dim oComm As New SqlCommand("SELECT ID_Pratica FROM Pratiche ORDER BY ID_Pratica ASC", oConn)
        Dim oRead As SqlDataReader = oComm.ExecuteReader
        While oRead.Read()
            Dim myNodePratiche As New NodoPratiche
            myNodePratiche.Label = "Pratica"
            myNodePratiche.ID_Pratiche = oRead("ID_Pratica")
            n1 = TreeView1.Nodes.Add(myNodePratiche.Label & "_" & myNodePratiche.ID_Pratiche)

            '-- estrazione Url inizio
            oConn1.Open()
            Dim oComm1 As New SqlCommand("SELECT ID_Url,Url FROM Url WHERE ID_Pratica=" & oRead("ID_Pratica") & "", oConn1)
            Dim oRead1 As SqlDataReader = oComm1.ExecuteReader
            While oRead1.Read()
                Dim nodeUrl As New NodoUrl
                nodeUrl.ID_Url = oRead1("ID_Url")
                nodeUrl.Url = oRead1("Url")
                n2 = n1.Nodes.Add(nodeUrl.Url)

                '-- estrazione Email inizio
                oConn2.Open()
                Dim oComm2 As New SqlCommand("SELECT ID_Email,Email FROM Email WHERE ID_Pratica=" & oRead("ID_Pratica") & " AND ID_Url=" & oRead1("ID_Url") & "", oConn2)
                Dim oRead2 As SqlDataReader = oComm2.ExecuteReader
                While oRead2.Read()
                    Dim nodeEmail As New NodoEmail
                    nodeEmail.ID_Email = oRead2("ID_Email")
                    nodeEmail.Email = oRead2("Email")
                    n3 = n2.Nodes.Add(nodeEmail.Email)
                End While
                oConn2.Close()

            End While
            oConn1.Close()

        End While
        oConn.Close()

        TreeView1.EndUpdate()
    End Sub

    Public Class NodoPratiche
        Public ID_Pratiche, Label As String
    End Class

    Public Class NodoUrl
        Public ID_Url, Url As String
    End Class

    Public Class NodoEmail
        Public ID_Email, Email As String
    End Class

    Private Sub TreeView1_BeforeExpand(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewCancelEventArgs) Handles TreeView1.BeforeExpand
        MsgBox("qui' vorrei visualizzare il valore di una proprieta' della classe in base al nodo cliccato")
    End Sub

il mio problema e' estrarre dalla classe un dato es:

da "Public Class NodoPratiche " vorrei estrarre il contenuto di "ID_Pratiche"
che contiene l'ID:Pratica del Nodo cliccato,

come posso fare ad estrarlo ???

io faccio questo:
Codice:
Dim x As NodoPratiche
Dim y As Integer = x.ID_Pratiche
MsgBox(y)
e mi da :
Codice:
 Riferimento a un oggetto non impostato su un'istanza di oggetto.
perche nonmi stampa l'ID_Pratiche selezionato con il click nel Nodo ???
race2 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre Recensione Google Pixel 11: non ha l'HiLight dei...
Suno lancia v6: le etichette incassano s...
Realme 16 Pro 5G, in arrivo la Harry Pot...
Logitech lancia MX Keypad, il nuovo cent...
NVIDIA punta sull'Australia: fino a 2 GW...
iPhone 17 sfonda quota 1.100 euro: l'aum...
Sei aziende cinesi accusate di copiare i...
Anthropic, scenario estremo: PIL +15% l'...
Star Wars (1977) torna al cinema in IMAX...
GeForce RTX 3070 Ti da 16 GB: un modder ...
IA e deliri religiosi: un uomo accusa Ch...
Nintendo Switch 2, arriva il VRR anche i...
Un errore delle API di Steam svela gli a...
Architettura 3D e materiali ferroelettri...
Mario Kart World riceve 10 circuiti grat...
Addio cobalto, le celle al manganese di ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:33.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v