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

Windows Forms Discussion :

[VB.NET] Combobox, Datasource et durée d'execution


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 111
    Par défaut [VB.NET] Combobox, Datasource et durée d'execution
    Bonjour,

    Le problème :
    Sur un projet de gestion d'une base de Pedigree de chevaux, j'ai des délais de construction de ComboBox trop importants à chaque ajout d'un nouveau pedigree.

    Le projet:
    La base est constituée d'environ 10.000 Pedigree et les informations pour chaque pedigree etant peu importante (string de 20 c max , 4 integer, 1 short, 5 Boolean) tout se passe en mémoire, la sauvegarde / chargement étant effectuée par sérialisation.

    La base des Pedigree est constituée par un SortedList d'une structure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
        ' STRUCTURE pedigree
        '
        Private _code As Integer                    
        Private _nom As String                      
        Private _année As UShort                  
        Private _sexeIsMale As Boolean          
        Private _isEtalon As Boolean              
        Private _isGagnant As Boolean           
        Private _isChefDeRace As Boolean      
        Private _isEtude As Boolean              
        Private _père As Integer                  
        Private _mère As Integer                 
        Private _use As Integer                   
     
        Public Property code() As Integer
            Get
                Return _code
            End Get
            Set(ByVal value As Integer)
                _code = value
            End Set
        End Property
    etc...
    Inherits SortedList(Of String, Pedigree)
    LEs test de vitesse que j'ai réalisé avec 12000 Pedigree sont les suivants :
    Deserialisation (load) Durée : 0,42 secondes
    constitution d'un index par Numero et par Nom (pour le combo) Durée : 0,06 secondes
    affectation datasource combo pedigree Durée : 1,66 secondes

    A chaque ajout d'un nouveau pedigree dans la base, je dois reconstruire les Datasource de 3 combos soit environ 3 x 1,66 secondes = 5 secondes ce qui est beaucoup trop long.
    Ces combos permettent juste d'obtenir la liste des pedigree par nom

    Je suis obligé de réaffecter les .datasource aux combos car je ne peux effectuer un insert sur l'arraylist du combo à chaque création de pedigree.

    1) L'affectation d'une source autre que ArrayList (qui permettrait un .insert) a un combo est-elle possible simplement ?
    2) Pour obtenir le comportement d'un combo avec une source de données sur laquelle je puisse effectuer des insert et aussi appliquer des filtres (du style uniquement les Males), de quoi dois-je partir ?
    3) Serait-il plus simple d'implémenter un combo "maison" de manière à utiliser la source que l'on veut ?

    Merci de me donner votre avis et les solutions que vous choisiriez pour résoudre mon "PETIT" problème.

    MS Visual Basic 2005 Express - FrameWork 2.0 - XP SP2 - Pentium 4 2.93 Ghz - 896 Mo Ram

    EDIT : QUESTION SUBSIDIAIRE : Vous semble t'il normal que créer 2 arrayList (index par Numero et par Nom ... ) demande 0,06 secondes et que pour affecter un de ces 2 array au comboBox il faut 1,66 secondes !

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 111
    Par défaut
    c'est déjà le Week End ou ce post n'est pas ou il faut ou est hors sujet ?

Discussions similaires

  1. [VB.NET] Filtre combobox - Datasource
    Par chepac dans le forum VB.NET
    Réponses: 15
    Dernier message: 16/06/2009, 14h28
  2. [VB.net 2005]ComboBox.DataSource ignore l'ArrayList source
    Par Macintoc dans le forum Windows Forms
    Réponses: 1
    Dernier message: 22/08/2006, 19h31
  3. [VB.Net] ComboBox et DataSource
    Par lacsap49 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/05/2006, 10h16
  4. [VB.NET] ComboBox/Datagrid enabled mais pas en saisie
    Par Cereal123 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 10/09/2004, 14h11
  5. [VB.NET] ComboBox lien entre deux tables
    Par VDB1 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 15/07/2004, 12h15

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