Executer du code avant le Load() [Résolu]

Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
- - Dernière réponse : Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
- 30 août 2013 à 16:07
Bonjour,

Sur mon application en VB.NET sous VS2010, j'aimerais tester si la connexion est valide (elle se trouve dans un fichier xml et j'arrive a la récuperer via la méthode LoadConf())

La MainForm contient plein de boutons, radiobutton, etc.

Dans un premier temps je souhaiterais executer une méthode Verfication() qui

1) Récupère la chaine de connexion
2) Teste la chaine de connexion
3) Avertit ou non l'utilisateur


Sur ces trois étapes aucun souci pour écrire le code.

C'est au niveau de la logique d'execution de l'application que je ne sais pas comment faire.

Dans mon MainForm_load() j'ai mis aussitôt la méthode Verification().

Sauf qu'elle ne peut pas s'executer car le load commence par charger mes controles et par exemple ça lance des RadioButton_check_changed qui eux même lance une connexion a la bdd.....


Comment faire pour éxecuter du code avant que la form se charge ?

Merci d'avance


--
Afficher la suite 

3 réponses

Messages postés
14599
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
7 décembre 2019
137
0
Merci
Bonjour,

Essayes de modifier le constructeur de ta classe (en le sortant du .designer).
Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
-
Bonjour,

Je ne comprends pas, pourquoi je devrais modifier le constructeur de la classe ?

EDIT : Ta solution m'interesse même si j'en ai une autre !
NHenry
Messages postés
14599
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
7 décembre 2019
137 -
La solution que je suggère est la même que Zermelo.
"Sub New" est le constructeur de la classe de la form.
Mais il ne faut pas laisser le constructeur dans le .designer.vb sinon, il serait écrasé à la prochaine modification de l'interface.
Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
-
Merci pour ces explications.
Bon week end.
Commenter la réponse de NHenry
Messages postés
378
Date d'inscription
samedi 22 septembre 2012
Statut
Membre
Dernière intervention
13 août 2017
13
0
Merci
Bonjour Moundir76.

Sur mon unique formulaire, que j'ai nommé "Accueil", j'ai déposé un bouton que, par souci d'originalité, j'ai nommé "Bouton1".
Dans ce formulaire, j'ai écrit le code
Public Class Accueil

    Public Sub New()
        InitializeComponent()
        MessageBox.Show("Avez-vous vu le joli bouton que j'ai mis sur ce formulaire ?")
    End Sub

End Class

que je vous suggère de tester.
Cordialement.
Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
-
Bonjour Zermelo,

En effet très astucieux de procéder comme celà,

Cependant, au niveau du programme, le fais d'instancer quelquechose "dans le vide" ne risque t il pas de poser problème par la suite ?

Cordialement.
Zermelo
Messages postés
378
Date d'inscription
samedi 22 septembre 2012
Statut
Membre
Dernière intervention
13 août 2017
13 -
Pour éviter tout problème, il suffit qu'aucun code ne précède la procédure Sub New.
Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
-
C'est noté. Merci beaucoup !
Zermelo
Messages postés
378
Date d'inscription
samedi 22 septembre 2012
Statut
Membre
Dernière intervention
13 août 2017
13 -
Bien sûr, il ne faudrait pas faire référence aux contrôles dans cette procédure.
Commenter la réponse de Zermelo
0
Merci
salut
Charger des contrôles au Load c'est bien !
et leurs propriétés Enabled ? mets cette propriété à False sur tes RadioButton , fais ta Verification et si c'est Ok tu mets cette propriété à True
Moundir76
Messages postés
286
Date d'inscription
dimanche 3 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2014
-
Salut,

Non ta technique ne fonctionne pas. la solution "bidouille" serait par contre de passer les checkbox non checked. Celle de Zemerlo fonctionne.

Merci pour ta réponse !

A+
Commenter la réponse de Utilisateur anonyme