Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3107 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [ VB .net ] Listview "invisible" [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[ VB .net ] Listview "invisible" [résolu]

n°1142963
jeoff
Posté le 07-07-2005 à 11:10:02  profilanswer
 

Bonjour,
 
Je suis sous vb .net 2002 et j'ai un "petit" soucis  :whistle:.
En fait j'ai un formulaire principal qui me sert de menu.
J'appelle alors mon formulaire de saisie des entrées en stock.
 
Ce formulaire comporte un composant listview.
Ce composant affiche le contenu des mes palettes
Jusqu'ici tout va bien, je fait mes différentes opérations d'ajouts sans soucis.
 
Si je quitte le formulaire, je retourne sur mon menu principal.
Puis si je decide de revenir sur le formulaire de saisie des entrées en stock, tout va mal !
 
En fait, ma base de données est interrogée correctement, elle remplit correctement la listview enfin presque puisque je n'ai que des lignes blanches ...
 
En fait quand je trace le programme, tout semble fonctionner normalement.
L'ascenceur apparaît donc il y a bien "des lignes".
 
Mais c'est blanc de chez blanc, comme si la listview était vierge !
 
 
--------------
 
Bon bah j'ai fini par trouver !
 
En fait mes colonnes n'étaient pas ajoutées du fait que le new() du formulaire n'était pas executé lors de la deuxième "ouverture" de mon formulaire de saisie.
 

Code :
  1. Public Sub New()
  2.         MyBase.New()
  3.         'Cet appel est requis par le Concepteur Windows Form.
  4.         InitializeComponent()
  5.         'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
  6.         lst_palette.Columns.Add("Quantité", 80, HorizontalAlignment.Center)
  7.         lst_palette.Columns.Add("Variété", 183, HorizontalAlignment.Center)
  8.         lst_palette.Columns.Add("Contractant", 100, HorizontalAlignment.Center)
  9.         lst_palette.Columns.Add("Porte-Greffe", 105, HorizontalAlignment.Center)
  10.         lst_palette.Columns.Add("Code variété", 0, HorizontalAlignment.Center)          'colonne cachée
  11.         lst_palette.Columns.Add("Index Rosier en BDD", 0, HorizontalAlignment.Center)   'colonne cachée
  12.         lst_palette.Columns.Add("Numéro camion", 0, HorizontalAlignment.Center)         'colonne cachée
  13.         lst_palette.Columns.Add("Index histo en BDD", 0, HorizontalAlignment.Center)    'colonne cachée
  14.         lst_palette.Columns.Add("Date", 0, HorizontalAlignment.Center)                  'colonne cachée
  15.     End Sub


 
Donc je l'ai deplacé dans une fonction qui est forcèment initialisé à chaque fois (test si le numéro de palette est renseigné).
 

Code :
  1. If numpal = -1 Then
  2.                 'initialise la grille de la listview
  3.                 lst_palette.Columns.Add("Quantité", 80, HorizontalAlignment.Center)
  4.                 lst_palette.Columns.Add("Variété", 183, HorizontalAlignment.Center)
  5.                 lst_palette.Columns.Add("Contractant", 100, HorizontalAlignment.Center)
  6.                 lst_palette.Columns.Add("Porte-Greffe", 105, HorizontalAlignment.Center)
  7.                 lst_palette.Columns.Add("Code variété", 0, HorizontalAlignment.Center)          'colonne cachée
  8.                 lst_palette.Columns.Add("Index Rosier en BDD", 0, HorizontalAlignment.Center)   'colonne cachée
  9.                 lst_palette.Columns.Add("Numéro camion", 0, HorizontalAlignment.Center)         'colonne cachée
  10.                 lst_palette.Columns.Add("Index histo en BDD", 0, HorizontalAlignment.Center)    'colonne cachée
  11.                 lst_palette.Columns.Add("Date", 0, HorizontalAlignment.Center)                  'colonne cachée
  12. [...]


 
Desolé pour la pollution ambiante de la cat :sweat:


Message édité par jeoff le 07-07-2005 à 11:44:43
mood
Publicité
Posté le 07-07-2005 à 11:10:02  profilanswer
 

n°1144259
jeoff
Posté le 08-07-2005 à 12:28:44  profilanswer
 

bon en fait jsuis un super boulet !
 
Ma bidouille fonctionne mais il y a une manière plus élégante.
------------
    Public Sub New()
           MyBase.New()
   
           'Cet appel est requis par le Concepteur Windows Form.
            InitializeComponent()
 
            lst_palette.Columns.Add("Quantité", 80, HorizontalAlignment.Center)
 
            [...]
 
 End Sub
-----------------
 
Et au lieu de "détruire" le listview avec lst_palette.Clear qui détruit tout même les colonnes; il fallait le remplacer par lst_palette.Items.Clear qui ne détruit que le contenu du listview et pas sa structure ... :sweat:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [ VB .net ] Listview "invisible" [résolu]

 

Sujets relatifs
declarer un hachage a deux entrees [Resolu]Probleme de mapping memoire[résolu]
Debutant cherche help!! redirection[resolu thx gatsusat]formulaire => name [RESOLU]
(RESOLU) syntaxe echo"document.write('....')";Variable qui compte le nombre d'enregistrements d'une table [RESOLU]
[Résolu] Pub et W3CFloat : comportement inattendu sous FF [Résolu]
[Résolu] [VC++] Style visuel XP et manifestheritage - [résolu !]
Plus de sujets relatifs à : [ VB .net ] Listview "invisible" [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR