Le if sur une valeur Null me retourne une erreur

Le if sur une valeur Null me retourne une erreur - VB/VBA/VBS - Programmation

Marsh Posté le 17-09-2012 à 19:28:18    

Bonjour,
 
Je programme en VB.NET un petit logiciel. Un à un certain moment je dois utiliser la fonction

Code :
  1. Me.LBX_CHOIX_TYPE.Items.AddRange(listeTypesChargerTypes._tableauResume)

pour remplir le list-box avec un tableau. Mon problème est que le tableau peut-être vide et à ce moment là, je reçois une erreur.
J'ai donc pensé à tester si le tableau est vide ou égal à Null mais rien à faire, je reçois toujours une erreur au moment du test avec if me disant que je ne peux avoir Null comme argument (ou quelque chose d'approchant suivant mon code).
Je viens donc vous demander votre aide.
 
Voici mon code :

Code :
  1. Sub chargerTypes()
  2.         Dim i = 0
  3.         If File.Exists("fichiers/" & langageSelect & ".bin" ) Then
  4.             'Création d'une classe creerFichierResume vide
  5.             Dim listeTypesChargerTypes As New creerFichierResume()
  6.             Dim FluxDeFichierResume As Stream = File.OpenRead("fichiers/" & langageSelect & ".bin" )
  7.             Dim Deserialiseur As New BinaryFormatter()
  8.             listeTypesChargerTypes = CType(Deserialiseur.Deserialize(FluxDeFichierResume), creerFichierResume)
  9.             FluxDeFichierResume.Close()
  10.             Me.LBX_CHOIX_TYPE.Items.Clear()
  11.             Me.LBX_CHOIX_TYPE.Items.AddRange(listeTypesChargerTypes._tableauResume)
  12.         End If
  13.     End Sub


 
Je teste si le fichier contenant le tableau existe. En suite je désérialise le fichier pour créer listeTypeChargerType qui contient mon tableau (listeTypeChargerType._tableauResume).
Je veux finalement mettre le contenu de mon tableau (une liste de mots) dans mon list-box (LBX_CHOIX_TYPE) mais cela lève un erreur du type ArgumentNullException.
 
Comment puis-je tester si mon tableau est vide avant de l'importer dana la list-box ?
 
 
Merci de vos réponses,
 
 
 
Bricomachin


Message édité par Bricomachin le 17-09-2012 à 19:43:07
Reply

Marsh Posté le 17-09-2012 à 19:28:18   

Reply

Marsh Posté le 18-09-2012 à 07:10:33    

Bonjour,
tu peux essayer comme ça :

Code :
  1. CBool(Not (Not tonTableau))


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 18-09-2012 à 18:55:48    

Salut,
 
Merci pour ta réponse mais il m'indique : "Impossible de convertir une valeur de type 'Tableau à 1 dimension(s) de String' en 'Boolean'."
 
Il me faut, je pense, tester le contenu de mon tableau. Mais aucun test ne survit à un argument vide à voir ;p.
 
Bien à toi,
 
 
Bricomachin

Reply

Marsh Posté le 19-09-2012 à 12:31:51    

perso j'aime pas les tableaux  
une collection c'est plus simple  
tu testes le nothing puis le .count <> 0 et c'est bon

Reply

Marsh Posté le 19-09-2012 à 16:39:57    

Ouais c'est vrai je vais faire comme ça...
 
Merci oovaveoo,
Merci boomy29,
 
Bien à vous,
 
 
Bricomachin

Reply

Marsh Posté le 29-09-2012 à 16:23:43    

isnull(...) ?

Reply

Marsh Posté le 29-09-2012 à 16:38:02    

je crois pas que ça exite en vb.net

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed