IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Probleme ComboBox 2 Colonnes avec String, Affichage Valeur TextBox [Débutant]


Sujet :

VB.NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : Espagne

    Informations forums :
    Inscription : Juillet 2003
    Messages : 323
    Points : 112
    Points
    112
    Par défaut Probleme ComboBox 2 Colonnes avec String, Affichage Valeur TextBox
    Bonjour,
    Je me gratte la tète sur récupérer une combobox avec string qui prend 2 valeurs pour afficher une valeur dans un textbox.
    Le Premier code m'affiche clairement ce que je desire.

    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     'INICIO PRODUCTO
            Try
                MysqlConn.Open()
                Dim Query As String
                Query = "select Apellidos, Nombre from test.RHumanos_Personal order by Apellidos asc"
                COMMAND = New MySqlCommand(Query, MysqlConn)
                READER = COMMAND.ExecuteReader
                While READER.Read
                    Dim Apellidos = READER.GetString("Apellidos")
                    Dim Nombre = READER.GetString("Nombre")
                    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
                End While
     
                MysqlConn.Close()
     
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
                MysqlConn.Dispose()
            Finally
                MysqlConn.Dispose()
     
            End Try
            'FIN PRODUCTO

    Donc je peux choisir en voyant Apellidos et Nombre. Jusqu'ici pas de problemes.

    C'est la deuxième parti du code qui me pose problème. Si je n'avais qu'une valeur je n'aurai pas eu le problèmes. Au moment de cliquer je crois qu'il c'est pas lire le combobox du au string.

    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
     
            MysqlConn = New MySqlConnection
            MysqlConn.ConnectionString =
            "server=localhost;userid=root;password=root;database=test"
            Dim READER As MySqlDataReader
     
            Try
                MysqlConn.Open()
                Dim Query As String
                Query = "select Direccion from test.RHumanos_Personal where Apellidos  = '" & ComboBox1.Text & "' AND Nombre = '" & ComboBox1.Text & "'"
                COMMAND = New MySqlCommand(Query, MysqlConn)
                READER = COMMAND.ExecuteReader
                While READER.Read
                    Dim Apellidos = READER.GetString("Apellidos")
                    Dim Nombre = READER.GetString("Nombre")
                    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
                End While
     
     
                While READER.Read
                    TextBox1.Text = READER.GetString("Direccion")
     
                End While
     
                MysqlConn.Close()
     
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
            Finally
                MysqlConn.Dispose()
     
            End Try

    Je laisse le code en entier si quelqu'un peux m'aider a resoudre correctement ce probleme. Car je ne sais pas la correct syntax.


    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    Imports MySql.Data.MySqlClient
    Public Class TEST
        Dim MysqlConn As MySqlConnection
        Dim COMMAND As MySqlCommand
        Private Sub TEST_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            MysqlConn = New MySqlConnection
            MysqlConn.ConnectionString =
            "server=localhost;userid=root;password=root;database=test"
            Dim READER As MySqlDataReader
     
            'INICIO PRODUCTO
            Try
                MysqlConn.Open()
                Dim Query As String
                Query = "select Apellidos, Nombre from test.RHumanos_Personal order by Apellidos asc"
                COMMAND = New MySqlCommand(Query, MysqlConn)
                READER = COMMAND.ExecuteReader
                While READER.Read
                    Dim Apellidos = READER.GetString("Apellidos")
                    Dim Nombre = READER.GetString("Nombre")
                    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
                End While
     
                MysqlConn.Close()
     
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
                MysqlConn.Dispose()
            Finally
                MysqlConn.Dispose()
     
            End Try
            'FIN PRODUCTO
        End Sub
     
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
     
            MysqlConn = New MySqlConnection
            MysqlConn.ConnectionString =
            "server=localhost;userid=root;password=root;database=test"
            Dim READER As MySqlDataReader
     
            Try
                MysqlConn.Open()
                Dim Query As String
                Query = "select Direccion from test.RHumanos_Personal where Apellidos  = '" & ComboBox1.Text & "' AND Nombre = '" & ComboBox1.Text & "'"
                COMMAND = New MySqlCommand(Query, MysqlConn)
                READER = COMMAND.ExecuteReader
                While READER.Read
                    Dim Apellidos = READER.GetString("Apellidos")
                    Dim Nombre = READER.GetString("Nombre")
                    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
                End While
     
     
                While READER.Read
                    TextBox1.Text = READER.GetString("Direccion")
     
                End While
     
                MysqlConn.Close()
     
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
            Finally
                MysqlConn.Dispose()
     
            End Try
     
        End Sub
    End Class


    Merci de votre aide....

  2. #2
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    Bonjour,

    j'ai pas tout compris à ton charabia mais si je comprends dans les grandes lignes il refuse de te récupérer des éléments dans une comboBox ?
    Si c'est la cas je crois que ça ne suffira pas : ComboBox1.Text

    Une comboBox peut avoir plusieurs valeur et chacune est indéxé dans un tableau (enfin je crois)
    Il faut que tu choisisse c'est index est ensuite ton .Text

    Je regarde exactement et j'édite pour te redire sauf si tu trouve entre temps

    Bon en fait j'ai rien dis en effet récupérer le text d'un CBX c'est ma Cbx.Text mais oubli pas le .ToString() derrière

    Soit maCbx.Text.ToStrin();

    ça devrait marché (après il faut voir aussi ta BDD comment elle est )

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Février 2006
    Messages
    505
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2006
    Messages : 505
    Points : 293
    Points
    293
    Par défaut
    Dim Str() as string = ComboBox1.Text.split("|")
    ça ressemblerait pas plus à ComboBox1.SelectedItem.ToString.Split("|")
    Query = "select Direccion from test.RHumanos_Personal where Apellidos = '" & str(0) & "' AND Nombre = '" & Str(1) & "'"

    si je comprend bien

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : Espagne

    Informations forums :
    Inscription : Juillet 2003
    Messages : 323
    Points : 112
    Points
    112
    Par défaut
    Merci de votre aide car je peine vraiment et j'avais pas mis la notification par mail.

    En fait mon ComboBox1 me permet de recuper Apellidos et Nombre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                While READER.Read
                    Dim Apellidos = READER.GetString("Apellidos")
                    Dim Nombre = READER.GetString("Nombre")
                    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
                    ComboBox1.Items.Add(Apellidos)
                End While
    Donc quand je clique dessus il m'affiche correctement ce que j'ai dans la table sous le format suivant :

    Messi|Lionel

    Sa c'est bon.

    J'ai un bouton qui me permet d'afficher dans TextBox1 son Adresse. J'ai fais des test en virant Nombre sans le ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre)) etc.... Pas de probleme sa marche.

    En fait je sais pas comment recuperer dans TextBox1 avec la combinaison Apellidos + Nombre.
    Donc il m'affiche rien.

    Je vous laisse le code original

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    Imports MySql.Data.MySqlClient
    Public Class TEST
        Dim MysqlConn As MySqlConnection
        Dim COMMAND As MySqlCommand
        Private Sub TEST_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            MysqlConn = New MySqlConnection
            MysqlConn.ConnectionString =
            "server=192.168.1.10;userid=xxxx;password=xxxx;database=xxxx"
            Dim READER As MySqlDataReader
    
            'INICIO Apellidos
            Try
                MysqlConn.Open()
                Dim Query As String
                Query = "select Apellidos, Nombre from xxxx.RHumanos_Personal order by Apellidos asc"
                COMMAND = New MySqlCommand(Query, MysqlConn)
                READER = COMMAND.ExecuteReader
    
                While READER.Read
                    Dim Apellidos = READER.GetString("Apellidos")
                    Dim Nombre = READER.GetString("Nombre")
                    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
                    ComboBox1.Items.Add(Apellidos)
                End While
    
                MysqlConn.Close()
    
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
                MysqlConn.Dispose()
            Finally
                MysqlConn.Dispose()
    
            End Try
            'FIN Apellidos
    
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    
            MysqlConn = New MySqlConnection
            MysqlConn.ConnectionString =
            "server=192.168.1.10;userid=xxxx;password=xxxx;database=xxxx"
            Dim READER As MySqlDataReader
    
            'INICIO Direccion
            Try
                MysqlConn.Open()
                Dim Query As String
                Dim Str() As String = ComboBox1.SelectedItem.ToString.Split("|")
                Query = "select Direccion from xCantera.RHumanos_Personal where Apellidos = '" & Str(0) & "' AND Nombre = '" & Str(1) & "'"
                COMMAND = New MySqlCommand(Query, MysqlConn)
                READER = COMMAND.ExecuteReader
    
    
                While READER.Read
    
                    TextBox1.Text = READER.GetString("Direccion")
    
                End While
                MysqlConn.Close()
    
            Catch ex As MySqlException
                MessageBox.Show(ex.Message)
            Finally
                MysqlConn.Dispose()
    
            End Try
            'Fin Direccion
    
        End Sub
    
    End Class
    Citation Envoyé par Mario Rousson Voir le message
    Dim Str() as string = ComboBox1.Text.split("|")
    ça ressemblerait pas plus à ComboBox1.SelectedItem.ToString.Split("|")
    Query = "select Direccion from test.RHumanos_Personal where Apellidos = '" & str(0) & "' AND Nombre = '" & Str(1) & "'"

    si je comprend bien
    J'ai introduit ton code mais cela ne me fais rien.............
    Je vais continuer a voir cela. Est-ce comme ci dessus que tu dis d'implanter ton code ?

    Car une fois cela fais je pourrais avancer monstrueusement dans mon petit EXE
    Merci....

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : Espagne

    Informations forums :
    Inscription : Juillet 2003
    Messages : 323
    Points : 112
    Points
    112
    Par défaut
    Citation Envoyé par Mario Rousson Voir le message
    Dim Str() as string = ComboBox1.Text.split("|")
    ça ressemblerait pas plus à ComboBox1.SelectedItem.ToString.Split("|")
    Query = "select Direccion from test.RHumanos_Personal where Apellidos = '" & str(0) & "' AND Nombre = '" & Str(1) & "'"

    si je comprend bien
    Merci............
    Votre aide est precieuse....

    J'ai modifier les espaces dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComboBox1.Items.Add(String.Format("{0} | {1}", Apellidos, Nombre))
    Cela fonctionne maintenant.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Problème récupération et affichage valeur TextBox
    Par BatFUT dans le forum C#
    Réponses: 3
    Dernier message: 22/06/2015, 19h16
  2. ComboBox multi-colonnes avec titre
    Par blackneil dans le forum VB.NET
    Réponses: 5
    Dernier message: 27/08/2014, 15h14
  3. [XL-2010] Probleme de formule Sommeprod avec x Grandes Valeurs
    Par DasAmnesiac dans le forum Excel
    Réponses: 1
    Dernier message: 12/02/2014, 21h32
  4. Réponses: 0
    Dernier message: 22/10/2009, 10h55
  5. []probleme affichage valeur dans combobox
    Par gup dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 23/09/2005, 09h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo