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

Windows Forms Discussion :

probleme de Refresh


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Enseignant
    Inscrit en
    Décembre 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 324
    Par défaut probleme de Refresh
    bonjour
    je recherche le moyen de réactualiser mes combobox en fonction du choix qui été fait dans le combo précedent.

    en plus clair

    dans le combo 1 qui est composé d'une liste de 7 items
    si je choisi le N°1, celui ci ne doit plus apparaitre dans la liste du combo 2,
    et si je choisi le N°3 dans le combo N°2 celui ci ne doit plus apparaitre dans les autres combo et ainsi de suite

    Je vous joint une partie du code que j'ai déja fait

    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
     Private Sub UpdateFeuille()
     
     
      '''''''''''''''''''''''''''''
            ' Alimentation du combo 1
            '''''''''''''''''''''''''''''
     
            Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & Application.StartupPath & "\gestionjoueurs.mdb;")
            Dim Mycommand As OleDbCommand = MyConnexion.CreateCommand()
     
            Mycommand.CommandText = "SELECT T_Joueur.IDJoueur,T_Joueur.Nom, T_Joueur.Prenom, T_Joueur.Dispo,T_Joueur.Init , T_Joueur.Pilier from T_Joueur where (T_Joueur.Dispo=1 and T_Joueur.Pilier=true and T_Joueur.Init=true)"
     
            MyConnexion.Open()
     
            Dim myReader As OleDbDataReader = Mycommand.ExecuteReader()
     
            ComboBox1.Items.Clear()
     
            Do While myReader.Read()
     
                strIdentifiant = CStr(myReader.GetValue(0))
                intLong = strIdentifiant.Length
                strIdentifiant = ""
                If intLong < 4 Then
                    Dim i As Integer
                    For i = 1 To (5 - intLong)
                        strIdentifiant = strIdentifiant & " "
                    Next
                    strIdentifiant = strIdentifiant & CStr(myReader.GetValue(0))
                    strNomPrenom = strIdentifiant & " :" & myReader.GetString(1) & " " & myReader.GetString(2)
     
                End If
     
                ComboBox1.Items.Add(strNomPrenom)
     
     
            Loop
            myReader.Close()
     
            MyConnexion.Close()
            Me.Refresh()
     
     Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
            Dim MyConnexion2 As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & Application.StartupPath & "\gestionjoueurs.mdb;")
            Dim Mycommand2 As OleDbCommand = MyConnexion2.CreateCommand()
     
            strToto = Mid(Me.ComboBox1.Text, 1, 5)
     
            If strToto <> "" Then
                If CInt(strToto) > 0 Then
     
                    Mycommand2.CommandText = ("UPDATE T_JOUEUR SET INIT=false WHERE IdJoueur=") & CInt(strToto)
     
                    MyConnexion2.Open()
     
                    Dim myReader2 As OleDbDataReader = Mycommand2.ExecuteReader()
                    MyConnexion2.Close()
     
                End If
            End If
     
        End Sub
    La selection doit se faire par rapport a une info qui est mise a false dans une table acces

    Merci pour votre aide
    @+
    Philippe

  2. #2
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    en utilisant Contains et RemoveAt ca doit être assez simple

  3. #3
    Membre éclairé
    Profil pro
    Enseignant
    Inscrit en
    Décembre 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 324
    Par défaut
    et bien merci pour la reponse. Mais dans vb2005, je ne vois pas ou est ce que je peut placer ce code dans la partie du code ci dessus.

    je suis un debutant et je ne comprend pas tout du premier coup "il me faut surement un refreh a moi aussi"

    alors un petit peux tu me donner plus de détails.

    merci
    Philippe

  4. #4
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    par exemple pour virer l'élément selectionner de combobox1 dans combobox2

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
            If ComboBox1.SelectedIndex > -1 Then
                Me.ComboBox2.Items.RemoveAt(Me.ComboBox2.FindStringExact(Me.ComboBox1.SelectedItem.ToString))
            End If
        End Sub

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Par défaut
    Citation Envoyé par philguio
    et bien merci pour la reponse. Mais dans vb2005, je ne vois pas ou est ce que je peut placer ce code dans la partie du code ci dessus.
    Fait une fonction qui enleve un élement defini d'une combo à l'aide de ce qu'a ecrit bidou et utilise cette fonction dans les evenements de chacunes des combobox à chaque fois que la valeur selectionnée change.

  6. #6
    Membre éclairé
    Profil pro
    Enseignant
    Inscrit en
    Décembre 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 324
    Par défaut
    bonsoir,
    mes combobox sont alimentés par des infos lues dans une table acces. Chaque fois que je selectionne un nom je change la valeur init ,(qui est par defaut 1 ) je la changes en 0. Le probléme est que ma BDD ne se réinitialise pas et donc je retrouve la valeur choisie dans les autres combo. Je cherche donc une methode pour reinitialiser ma table a chaque fois que je change de combo

    Il y a un exemple de code plus haut

    Merci à tous par avance
    @+
    Philippe

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Par défaut
    Citation Envoyé par philguio
    Le probléme est que ma BDD ne se réinitialise pas et donc je retrouve la valeur choisie dans les autres combo. Je cherche donc une methode pour reinitialiser ma table a chaque fois que je change de combo
    C'est normal puisque ta combo1 n'est pas du tout lié à la BDD.

    Neanmoins je ne vois pas bien l'interêt d'aller modifier les valeurs de la base de donnée à chaque changement de valeur de ta combobox, le but est juste de ne pas avoir la valeur dans les autres combo ???

Discussions similaires

  1. [JList] Probleme de refresh
    Par if_zen dans le forum Composants
    Réponses: 2
    Dernier message: 27/10/2006, 23h02
  2. [VB.NET] [ProgressBar] Probleme de "refresh"
    Par Aspic dans le forum Windows Forms
    Réponses: 3
    Dernier message: 06/05/2006, 16h15
  3. [tomcat][stuts]probleme de refresh page jsp
    Par v1nc3kr0 dans le forum Servlets/JSP
    Réponses: 20
    Dernier message: 29/08/2005, 10h34
  4. Réponses: 6
    Dernier message: 25/04/2005, 14h49
  5. Probleme de Refresh avec TQuery et DBGrid
    Par insoo dans le forum C++Builder
    Réponses: 7
    Dernier message: 25/11/2003, 17h20

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