Depuis que j'ai commencé à utiliser VB.NET il y a quelques années, je suis devenu familier avec l'utilisation des fonctions de liaison de données de .NET, mais je trouve souvent que mon auto est déconcerté par son comportement. La bonne façon de travailler devrait me permettre de trouver du travail pour répondre à mes besoins et continuer.Liaison de données maître-détail VB.NET personnalisée
Inutile de dire que mes problèmes continuent de se poser. J'utilise des objets personnalisés comme sources de données pour les contrôles et souvent des formulaires entiers. Je trouve frustrant de séparer la logique métier et l'interface graphique. (Cela pourrait être une nouvelle question entièrement.) Donc, pour beaucoup d'objets, je génère un formulaire qui a le DataBindingSource
pour l'objet. Lorsque je crée chacun à partir du Nouveau Constructeur, je lui passe explicitement l'objet auquel il doit être lié, puis je le mets à DataSource
du BindingSource
. (C'est une bouchée!)
Maintenant, l'objet Maître (disons lié à chaque formulaire) contient souvent une liste d'objets que j'ai aimé afficher dans un DataGridView
. Je crée (parfois) et modifie ces objets enfants sous leur propre forme (en créant à nouveau une base de données de la même manière que le masque principal) mais lorsque je les ajoute à la liste dans l'objet maître, le DataGridView
ne sera pas mis à jour avec les nouveaux éléments.
Ma question a vraiment quelques couches:
Comment puis-je facilement/efficacement/mettre à jour correctement cette
DataGridView
avec la liste des objets de détail quand je les ajoute à la liste de l'objet principal. Cette approche est-elle bonne pourDataBinding
?Quelle est la meilleure façon de séparer la logique métier de l'interface graphique.