Je suis nouveau sur MVC et Business Objects mais j'ai du mal à comprendre comment déclencher une actualisation sur un formulaire lorsqu'une mise à jour se produit dans ma logique métier.VB.net Raising Events ... confusion! MVC
Ce n'est pas un problème pour 95% de mes formulaires, car ils appellent la mise à jour à partir du formulaire qui doit être mis à jour.
Cependant, dans certains cas, une forme interne fait et mise à jour qui nécessite une forme extérieure pour refléter cela. J'ai lu à propos de Handles, Delegates, AddressOf etc etc et je me noie dans les options.
En termes simples, il me faut trois choses pour arriver 1. Form2 (forme intérieure) a mis à jour les informations, afin que l'utilisateur clique sur Enregistrer 2. Enregistrer appelle mon accès aux données couche et met à jour la base de données 3. Form1 (externe form) a un DataGrid qui doit être notifié pour qu'il puisse être mis à jour via un LoadGrid secondaire
C'est l'étape 3 que je ne peux pas faire. Comment puis-je déclencher un Sub dans Form2 (LoadGrid) pour effectuer l'actualisation à partir d'une classe externe. Si je peux juste faire fonctionner cela, je suis sûr que je vais apprendre de cela pour d'autres scénarios.
Salut Dean, merci beaucoup, cela est le genre de code que je cherchais. Une chose dont je ne suis pas sûr cependant, la partie "o comme objet, e comme EventArgs".J'ai enlevé ceci car je n'étais pas sûr de ce que o et e étaient censés représenter dans cette situation. Cependant, le Handles Sub n'est jamais appelé et je pense que c'est pour faire avec moi en supprimant le "o comme objet, e comme eventargs". Si cela est correct, que puis-je transmettre en tant qu'objet et EventArgs? Toutes mes excuses si c'est une question stupide, mais merci beaucoup pour votre aide jusqu'à présent. – Mitch
Voir ci-dessus pour plus d'informations – Dean
Je pense que nous sommes presque là mais toujours pas de joie. Je me suis assuré que j'utilise "ByVal Updated As Boolean" et modifié ma classe Business pour inclure WithEvents mais le Handles Sub ne répond toujours pas. Le RaiseEvent est définitivement appelé, mais c'est là que le sentier devient froid. Ma couche de gestion est déclarée en tant que Private Shared WithEvents _ClientDAL en tant que nouvelle ClientDAL(). – Mitch