Aide conversion C# -> VB

Résolu
Bonjour, j'essai de convertir un projet C# en vb, pour m'aider j'utilise https://www.developerfusion.com/tools/convert/csharp-to-vb .Il me reste une seul chose à corriger

C#
( (Button)window.Controls[ "Quit" ] ).Click += delegate( Button sender )
{
SetShouldDetach();
};


et la conversion ma donné :

DirectCast(window.Controls("Quit"), Button).Click += Sub(sender As Button) SetShouldDetach()

suite à quoi j'obtient l'erreur

Erreur 1 'Public Event Click(sender As Engine.UISystem.Button)' est un événement. Il ne peut donc pas être appelé directement. Utilisez une instruction 'RaiseEvent' pour déclencher un événement.

Pouvez- vous s'il vous plait corriger et/ou m'expliquer comment la corriger.

PS : Eviter les remarque du genre C# c'est mieux ...

Merci par avance.

3 réponses

  1. Contributeur
    'lut, rah les delegates c'est magique :)
    AddHandler DirectCast(window.Controls("Quit"), Button).Click,
        Sub(sender As Button)
            SetShouldDetach()
        End Sub

    Ou alors
    AddHandler DirectCast(window.Controls("Quit"), Button).Click,
        Function(sender As Button) (SetShouldDetach())

    C'est un peu le bazar les lambdas en VB.NET...
    1. Merci pour ta réponse rapide, je rentre chez moi ce soir et j'essai aussitôt