Bonjour,
Je rencontre un comportement étrange sur l'appel de la méthode Clear() sur un Tabcontrol.
Lors du démarrage de mon programme, dans le form_load, je reconstruit un TabControl en fct du niveau d'accès de l'utilisateur.
Pour cela :
- Je mémorise dans une liste les TabPages présentes par défaut (celles que j'ai crée avec le concepteur)
- J'efface mon Tabcontrol
- Puis je rajoute dans mon TabControl, les TabPages en fonction des droits d'accès de l'utilisateur
Cette séquence se déroule jusqu'au bout et j'obtiens au final ce que je souhaite.
Mais lorsque j'effectue l'étape 2 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part MonTab.TabPages.Clear()
j'ai systématiquement un message d'exception qui apparait dans la fenêtre Sortie.
Exception levée : 'System.NullReferenceException'
Pourquoi ?
Avant l'appel à la méthode Clear() mon TabControl n'est pas vide
J'ai mis un point d'arrêt dans le catch et apparemment, je n'y passe pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Debug.WriteLine(MonTab.TabCount.ToString & " TabPages") Try MonTab.TabPages.Clear() Catch ex As Exception Debug.WriteLine("Message :" & ex.Message) End Try ' J'obtient ceci : ' 2 TabPages ' Exception levée : 'System.NullReferenceException'
Pourtant, dans ma fenêtre Sortie, j'ai bien un message d'exception qui apparait...
Partager