2009-02-18 8 views
0

J'ai une relation maître-détail implémentée avec deux contrôles Datagridview dans C#. Les sources de données sont chacune connectées à un DataTable et la connexion est effectuée à l'aide d'une DataRelation. J'ai ajouté une colonne de case à cocher en utilisant "Ajouter une colonne" de la DataGridviewTask.Colonne de sélection Datagridview pour la relation maître-détail

Je veux réaliser que je peux utiliser cette case à cocher pour sélectionner/désélectionner une ligne de détail qui sera alors liée à la ligne maîtresse actuelle. La relation entre la ligne principale et la ligne de détail doit être 1: 0..1. Après avoir sélectionné une ligne de détail, une méthode devrait être appelée, qui sauvegardera l'information dans une table de base de données.

Pour le moment je ne sais pas comment y parvenir, même je ne peux pas cliquer sur la case à cocher (ce n'est certainement pas en lecture seule), je suppose que cela a quelque chose à voir avec le "DataPropertyName" de la colonne checkbox, mais je ne sais à quelle propriété je devrais le mettre.

Si quelqu'un a une idée de la façon de réaliser ce scénario (peut-être même une extension datagridview gratuite), j'apprécierais vraiment cela.

Merci Daniel

Répondre

1

Pour commencer, vous devez vous assurer qu'il existe une colonne booléenne pour la case à cocher. Dans un jeu de données typé, vous pouvez facilement en ajouter un en utilisant DatasetDesigner.

+0

Salut, merci pour votre réponse, mais je ne veux pas changer le schéma de la base de données. Je veux juste utiliser la case à cocher dans mon code comme un indicateur qu'une sélection existe. – user66928

+0

Vous pouvez ajouter une colonne à un DataTable qui n'est pas dans le Db –

+0

ah, cool, excellent! Savez-vous aussi s'il y a un moyen d'ajouter cette nouvelle colonne en tant que première colonne et non en tant que dernière colonne, de sorte que je n'ai pas besoin d'écrire du code pour changer la position dans datagridview (j'aime la case à cocher première colonne)? – user66928

Questions connexes