IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

déplacement fleche bas haut listView crash


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 45
    Par défaut déplacement fleche bas haut listView crash
    Bonjour
    J'ai une listeView, je peux me déplacer rapidement entre les items avec les flèches bas et haut (a chaque listView1_SelectedIndexChanged une action se produit avec un calcul)

    Donc lorsque j'ai beaucoup d'items dans ma listeView il arrive que le programme crash (ne répond pas) lorsque je me déplace rapidement dans la listeView

    Comment faire pour régler ce problème ?

  2. #2
    Membre Expert
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Par défaut
    Bonjour,

    Si tu utilises un ListView sans virtualiser ses items tu risques d'étrangler passablement Windows, car le ListView va tenter de dessiner tout ses items même ceux qui ne sont pas visibles.

    Pour virtualiser un ListView en WinForm c'est un peu compliqué mais ça vaut le coup de s'y attarder :

    http://blogs.msdn.com/b/hippietim/ar...20/555893.aspx

  3. #3
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 45
    Par défaut
    Merci je vais essayer de regarder de ce coté la

    Mais comme tu le dis c'est un peu compliqué, si quelqu'un connait une astuce pour régler mon problème facilement je suis preneur

    merci

    edit: je reconstruit régulierement ma listeview, elle na pas de taille fixe, du coup je sais meme pas si je peux le faire envirtuel

  4. #4
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 45
    Par défaut
    J'ai regardé un peu le mode virtuel
    il faut effectivement un nombre fixe d'items
    deplus apparament le mode virtuel permet d'afficher un tres grand nombre d'items

    hors je n'ai toujours que moins de 100 items, le probleme vient lorsque je change tres vite d'items avec les fleches cela crash mon programme (a chaque changement d'index de la listeview je fais calculs)

  5. #5
    Membre Expert
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Par défaut
    il faut effectivement un nombre fixe d'items
    Dans l'exemple que je t'ai donné oui mais tu peux le changer normalement sans problème le tableau utilisé en List.

    hors je n'ai toujours que moins de 100 items, le probleme vient lorsque je change tres vite d'items avec les fleches cela crash mon programme (a chaque changement d'index de la listeview je fais calculs)
    Si tu n'as que 100 items et que c'est le calcul qui prend du temps, peut être peux-tu envisager un pré-calcul avant l'affichage ?

  6. #6
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 45
    Par défaut
    je crois que c'est ce que je fais, le calcul permet d'afficher justement différents choses en fonction du calcul,

    et a chaque changement d'index de la listView, le calcul est refais ...

    lorsque j'arrive a 50 ou plus items et j'utilise les fleches haut et bas pour me déplacer rapidement dans la listView, le programme se fige "ne répond plus"

    je n'ai peut être pas compris ou tu voulais en venir avec le pré calcul

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 07/10/2011, 15h41
  2. [WD11] Molette souris Bas/Haut
    Par Redg9 dans le forum WinDev
    Réponses: 3
    Dernier message: 06/04/2010, 21h16
  3. Filtres sonores (passe-bas/haut, coupe-bande, passe-bande) sur valeurs échantillonnée
    Par jeroman dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 01/09/2008, 17h47
  4. Pb touche fleche haut et Bas
    Par Andry dans le forum Delphi
    Réponses: 5
    Dernier message: 23/10/2006, 11h53
  5. Lire un son WAVE + filtre passe BAS/HAUT
    Par selmak7 dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/08/2006, 13h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo