begin process at 2012 02 14 20:14:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Base de données

 > 

ADO.NET

 > 

pb liaison données avec datagridview


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb liaison données avec datagridview

vendredi 24 novembre 2006 à 16:23:33 | pb liaison données avec datagridview

f1isj

Membre Club
Bonjour,

Debutant en ADO.net, j'ai un probleme avec un datagridview.

J'ai une base de données (access) avec 3 tables:
Dessin avec les champsdessinID, date, nom, form1ID, form2ID
Form avec les champs formID, NomForm, couleurID
Couleur avec les champs couleurID,CouleurNom

Ces tables sont en relation: Dessin avec Form et Form avec Couleur par les
ID donc 3 niveaux
Dessin
|
Form
|
Couleur

Je voudrais créer un datagridview affichant tous les champs, c'est à dire :
DessinID, date, form1NomForm, form1CouleurNom, form2NomForm,
form2CouleurNom.

Pas de probleme pour afficher dessinID, date, nom, nom des form 1 et 2
Par contre je ne vois pas comment afficher les couleurs.
Pour l'instant j'en suis là:
le DataGridView avec comme dataSource la table Dessin
1 colonne pour chaque champ désiré
date OK
Nom(dessin) OK
colonne form1NomForm: datasource=BindingSourceForm,
datapropertyname=form1Id, displaymember = nomForm, valuemember=form1ID
idem pour form2


Dans mon dataset, j'ai toutes les tables. Dans le datagrid, j'ai essayer de
creer une colonne combobox independante avec datasource= Couleur,
Valuemember= couleurID, displaymember=couleurnom
mais, impossible de pouvoir afficher le champ CouleurNom dans la propriete
DataPropertyName puisque le grid est lié à la table dessin et le champ
CouleurID n'est pas en lien direct avec la table dessin.
Au chargement du grid, les cellules correpondantes aux couleur sont vides.
Le combobox contient bien les couleurs quand on le deroule (2 clic
necessaire pourquoi ?) et la bonne couleur est selectionnée mais l'affichage
en non deroulé est vide. Par contre si je modifie la couleur, celle-ci reste
bien affichée

Comment recuperer le nom des couleurs et l'afficher dans le datagrid view?

Merci de vos reponse.

Eric
vendredi 24 novembre 2006 à 19:39:43 | Re : pb liaison données avec datagridview

Boudchiche

je ne comprend pas ce Que represente form2ID dans la table Dessin et s'est quoi ca form1NomForm, form1CouleurNom, form2NomForm,
form2CouleurNom.
Essaye de mieux explique ton code si tu veut qu'on t'aide
Ce que tu doit faire s'est remplir ton dataset par un requette qui rassemble tout les champs qui bien sur remplis une table 
Ou bien remplir directement un table par un dataadapter
et tu lie ta table au datagrid

samedi 25 novembre 2006 à 00:09:50 | Re : pb liaison données avec datagridview

f1isj

Membre Club

Bonsoir,

Ce n'est pas du code mais l'explication de ma BDD.
Meilleure explication pour les champs (j'espere):

Table1: nom=Dessin, champs= ID(identificateur)+ date + nom + form1 (qui va contenir un FormID de la table Form) + form2, identique à form1
Table2: nom=Form, champs= ID (identificateur), Nom (de la forme), Couleur (qui contient un ID de la table couleur).
Table3: nom=Couleur, champs=ID(identificateur), NomCouleur

Les tables sont en relation par les ID, cad que j'ai dans la table couleur par exemple
1, vert
2,rouge

dans la table Form
1(ID de la forme) , carré (nom de la forme) , 1 (ID de la couleur) (donc un carré vert)
2, rond, 2  (ID de la couleur) (donc un rond rouge)
3, carré, 2 (ID de la couleur) (donc un carré rouge)

dans la table dessin
1, 15/12/2005, essai, 1 (la form1 est un carré vert), 3 (la form2 est un carré rouge)

Je voudrais donc un datagridview qui m'affiche:
1, 15/12/2005, essai, carré, vert, carré , rouge

c'est a dire: ID du dessin, date, nom, nom de la form 1, couleur de la form1, nom de la forme2, couleur de la forme2
Mais apres moult recherches, c'est difficile à part avec une requete specifique et un nouveau dataset.
On fait facilement
ID, date, nom, nom form1, nom Form2 mais pour les couleurs c'est + dur car 1 niveau de plus dans la hierarchie des tables.
Merci quand meme de la reponse.

Eric

samedi 25 novembre 2006 à 14:28:45 | Re : pb liaison données avec datagridview

Boudchiche

Essaye ca et je crois que ca vas marcher si j'ai bien compris

Dim strsql as string
strsql="SELECT Dessin.ID_Dessin,Dessin.Date_Dessin,Dessin.Nom,Form1.Nom,Form2.Nom,Couleurs.Couleur FROM Dessin,Form1,Form2,Couleurs WHERE Dessin.ID_Dessin=From1.ID_Dessin AND Dessin.ID_Dessin=Form2.ID_Dessin AND Dessin.ID_Form1=Form1.ID_Form1 AND Dessin.ID_Form2=Form2.ID_Form2 AND Form1.ID_Couleur=Couleurs.ID_Couleur AND Form2.ID_Couleur=Couleurs.ID_Couleur"

Dim  TonAdapter as SqlDataAdapter=new sqlDataAdapter(StrSql,TaConnection)
Dim TaTable as new DataTable
TonAdapter.Fille(TaTable)
TonDataGridView.DataSource=TaTable
A plus
samedi 25 novembre 2006 à 14:30:37 | Re : pb liaison données avec datagridview

Boudchiche

Réponse acceptée !
dans la 2eme ligne de la requete ca n'apparais pas mais c couleurs.couleur
samedi 25 novembre 2006 à 18:26:22 | Re : pb liaison données avec datagridview

f1isj

Membre Club
Bonsoir,

Merci pour la reponse, c'est ce que j'ai fait.
Je pensais au depart que a partir du dataset (qui si j'ai bien compris conteient aussi les liaisons) comprenant toutes les tables de la base, on pouvait reconstruire n'imorte quelle donnée avec les liaisons dans le datagridview. Mais appremment c'est pas faisable. Ca peche au niveau du databinding du datagridview, on ne peut descendre que d'un niveau dans la hierarchie des tables.

Merci

eric


Eric


Cette discussion est classée dans : form, couleur, afficher, datagridview, dessin


Répondre à ce message

Sujets en rapport avec ce message

VB.Net Gérer un code lors du tri d'un DatagridView [ par JeffC1977 ] Bonjour à tous J'utilise ADO.Net pour faire afficher une base de données Access dans un DatagridView. Lorsque je fais afficher la BD dans mon datagr Afficher la fenêtre d'un programme externe dans une form [ par fredman76 ] Bonjour, Je ne sais pas si c'est possible mais j'aimerais afficher dans une form la fenêtre d'un autre programme par exemple Word, Paint etc, de sort Afficher/Masquer Toolstrip & Décalage de la Form [ par dullbrain ] Bonjour à tous, désolé pour le titre pas très clair mais c'est difficile à expliquer en quelques mots ! Voici mon problème : je crée un ToolStrip da Gestion d'un DataGridView [ par kyliif ] Bonjour à tous, Je vous explique mon problème : J'ai un dataGridView où l'utilisateur devra remplir les cellules (code, description, prix), mais j'aim Ligne des colonnes sur un DataGridView [ par guilleto ] Bonjour à toutes et à tous, Je vais surement poser une question idiote mais bon tant pis ! Je voudrais savoir s'il est possible sur un DataGridView d Afficher hors de la form [ par Polack77 ] Bonjour, Je cherche à crée un contrôle qui m'affiche un MonthCalendar (un peut comme le DateTimePicker mais en mieux, pck ce contrôle est franchement Afficher une feuille dans un datagridview avec VB2005 [ par RNtsoa ] Bonjour, je suis débutant en programmation avec VB 2005. Je veux afficher une feuille excel dans un datagridview. Merci de me donner quelques consei Affichage table liées dans datagridview [ par astouz2000k ] Bonjour, je souhaite afficher dans un datagridview une table ainsi que les table enfant. je m'explique: dans la table parent j'ai des valeurs (par afficher des données dans datagridview [ par saadouli7 ] bonjour je travaille avec vb.net sur une base access. j'ai une table qui contient les champ suivants: n° groupe, jour(seulement le n° du jour du seam DataGridView ou pas ? [ par Yaron22 ] Bonjour à toutes et à tous, Je suis débutant, et je souhaiterai avoir votre avis, et surtout une aide s'il vous plait. J'utilise Visual Studio 2008.


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,919 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales