Visual Studio et SharpDevelop ne configurent pas les délégués pour gérer les événements de la même manière. La façon dont ils sont configurés est un peu différente. Cela rend difficile l'utilisation de VS à un endroit et de #Develop à un autre (sur le même projet).
Par exemple, en VB, Visual Studio fait ce qui suit :
Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
Me.DialogResult = System.Windows.Forms.DialogResult.OK
Me.Close()
End Sub
Et...
Friend WithEvents OK_Button As System.Windows.Forms.Button
Ainsi, le contrôle est déclaré, non seulement avec une portée différente (cela peut être un problème aussi, mais ce n'est pas le sujet de ce post) mais avec un withevents. Le gestionnaire d'événements lui est ensuite attribué par une clause handles.
dans #Develop, cela se fait comme ceci ...
Sub OK_ButtonClick(sender As Object, e As EventArgs)
End Sub
et ...
Private button1 As System.Windows.Forms.Button
Ensuite, dans la méthode InitializeComponent
AddHandler Me.button1.Click, AddressOf Me.OK_ButtonClick
Le plus ennuyeux dans tout cela, c'est que même si on le fait d'une façon, l'autre idéal le refera, avec des déclarations en double, et bien sûr, des erreurs de compilation.
Est-ce que quelqu'un connaît un moyen de contourner ce problème, un moyen de personnaliser les gestionnaires par défaut ? Même si ce n'est qu'un moyen de les désactiver, afin de pouvoir les saisir manuellement ?