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 :

Relier deux datagrid ensembles?


Sujet :

VB.NET

  1. #1
    Membre averti
    Profil pro
    Lycéen
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Par défaut Relier deux datagrid ensembles?
    Bonjour, si le problème est complexe, la question est simple , comment faire pour relier deux datagrid ensemblers?

    Je m'explique,

    J'aurai un datagrid1 et un datagrid2
    Les deux sont reliés à la même base de donnée, le 1 à une table AUTEURS, le 2 à une table ALBUMS.

    L'effet recherché est simple, quand on clique sur le nom d'un auteur dans le datagrid1, les albums de l'auteurs s'affichent dans le datagrid2.

    J'ai tenté cela, mais ca ne fonctionne pas...

    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
    Dim auteur As String = datagrid1.CurrentCell.Value
     
    Dim connectString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = .\Resources\Collection.mdb"
     
    Dim maConnexion As New OleDb.OleDbConnection(connectString)
     
    Dim search_albofaut As New OleDb.OleDbCommand
     
    maConnexion.Open()
     
    search_albofaut.Connection = maConnexion
     
    search_albofaut.CommandText = "SELECT * FROM ALBUMS WHERE Scénariste='" & auteur & "'"
     
    search_albofaut.ExecuteNonQuery()
     
    Dim albofaut = search_albofaut.ExecuteReader
     
    'et enfin, une fois la requete executée, on affiche les resultats dans le datagrid2 :
     
    datagrid2.DataSource = albofaut

    Si quelqu'un pourrait m'aider, merci beaucoup
    A mon avis, c'est pas grand chose, je pense qu'il faudrait d'abord passer par un tableAdapter mais je ne vois pas trop comment déclarer le truc...

  2. #2
    Membre averti
    Profil pro
    Lycéen
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Par défaut
    Tiens, maintenant j'ai mis ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Dim albofaut As New Data.DataTable
    Dim autdr As System.Data.IDataReader = search_albofscen.ExecuteReader()
    albofaut.Load(autdr)
     
    datagrid2.DataSource = albofaut
    Et ca m'affiche dans le datagrid2 les bonnes colonnes de la table ALBUMS mais aucune ligne?

    Enfin, c'est un progres mais si je pourrais avoir les lignes qui correspondent à la requête ca serait mieux quand même

  3. #3
    Membre averti
    Profil pro
    Lycéen
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Par défaut
    Je viens d'essayer ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim scen As String = "SELECT * FROM ALBUMS WHERE Scénariste='" & auteur & "'"
    Dim da As New OleDb.OleDbDataAdapter
    da.SelectCommand = New OleDb.OleDbCommand(scen, maConnexion)
    Dim albofscen As New Data.DataSet
    da.Fill(albofscen)
    datagrid2.DataSource = albofscen
    Mais ca marche toujours pas!!

    Je vais devenir fou!

    HEEEEEEELP!

  4. #4
    Membre expérimenté
    Inscrit en
    Novembre 2006
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 337
    Par défaut
    quand tu te met en mode debug, que contient ton dataset ???

    car j'ai un probleme quasi identique au tient, si ca peut t'aider, mon post se nomme "rafraichir un datagrid"...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Par défaut
    je pense que si tu rajoute datagrid2.databind() ca dois fonctionner.

Discussions similaires

  1. relier deux INOUT ensemble vhdl
    Par Safou88 dans le forum VHDL
    Réponses: 1
    Dernier message: 25/06/2013, 17h14
  2. Relier deux broches d'un port série
    Par bengign dans le forum C++
    Réponses: 2
    Dernier message: 27/12/2005, 00h37
  3. [TP] Relier deux points ?
    Par wwwroom dans le forum Turbo Pascal
    Réponses: 9
    Dernier message: 28/06/2005, 19h04
  4. [débutant] relier deux tables
    Par benoitB dans le forum Débuter
    Réponses: 4
    Dernier message: 27/06/2005, 14h04
  5. [C#] comment lier les ascenseurs de deux datagrids ??
    Par mbibim63 dans le forum Windows Forms
    Réponses: 18
    Dernier message: 06/06/2005, 15h14

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