juin
2007
En C#, dans une Windows Application, on a une classe program qui ouvre la form principale.
En VB, ceci est beaucoup moins clair. En effet, vous avez un fichier Application.myApp de type xml dans lequel vous retrouvez des informations dont la classe (de type Form) a lancé au démarrage. Dessous, vous avez un fichier Application.designer.vb.
Le problème c’est que ce fichier est une classe partial et vous n’avez pas accés à l’autre partie. Or celle-ci existe forcément. Etudions un exemple de Application.designer.vb pour vous en convaincre :
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = false
Me.EnableVisualStyles = true
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.WindowsApplication1.Form1
End Sub
End Class
Donc on a un contructeur qui appelle le constructeur de base en lui passant un paramètre, on a une méthode override mais on n’a pas définit quelle était la classe dont MyApplication hérite. Cela m’amène a la conclusion qu’il y a une autre classe partial qui elle a ces infos mais cette classe n’apparait pas dans l’arborescence de mon projet !
D’où le titre.