Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TRIER UN LISTVIEW PAR CLIC SUR L'ENTÊTE DE COLONNE ET COULEUR + AJUSTEMENT AUTO VB.NET


Information sur la source

Catégorie :Control Source .NET ( DotNet ) Niveau : Initié Date de création : 28/04/2004 Date de mise à jour : 31/07/2004 19:37:09 Vu / téléchargé: 17 567 / 3 823

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (37)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Cette Dll permet sur un ListView:
Le trie Asc ou Desc par clic sur l'entête de colonne
La coloration d'une ligne sur 2 de la couleur de votre choix
L'ajustement automatique des colonnes en fonction du contenu seul ou du titre ou contenu.
Simple d'utilisation, l'exemple Test explique le fonctionnement donc je n'ai pas jugé necessaire un fichier RTF d'explication.
Le code de Test est dans le Load et dans le columnClick
Il suffit d'inclure la DLL dans les réferences
VB.NET 2003
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

31 juillet 2004 11:37:21 :
Modification par rapport à précédente version: Trie amélioré erreur sur nombres négatifs corrigé Ajout d'icône de trie optionnel Impression de la listview avec 1 ligne de code
31 juillet 2004 18:22:07 :
Correction de l'alignement à gauche des colonnes numériques lors du tri.
31 juillet 2004 19:37:09 :
Exemple de suppression de ligne(s)

Commentaires et avis

signaler à un administrateur
Commentaire de gwiwi le 29/04/2004 09:01:37

J'ai un message d'erreur au lancement de l'appli.

DLL non enregistrée ??? pourtant VB.NET 2003 installé sur le poste.


Est ce que le tri fonctionne sur les date et sur les Chiffres ?

signaler à un administrateur
Commentaire de labout le 29/04/2004 09:22:56

Oui cela fonctionne sur les chiffres et date comme l'exemple le montre.
Vas dans référence et si SortListView.dll a un drapeau otes la puis
vas dans  références du projet Test.
Clic droit sur référence ajouter puis parcourir et sélectionner
SortListView.dll
Ce n'est pas la première DLL que je fais et cela a toujours marché ce doit être une question d'adresse car il n'y a pas à enregistrer la DLL avec Regsvr32
@+

signaler à un administrateur
Commentaire de ludovicanceaux le 23/06/2004 15:01:21

super comme code comme dab quan ca vien de labou mai seulement un peu complexe qun on se met a le modifié un p'tit peu!!! ;-) 10/10

Seulement comment on pe trier la Listview automatiquement a chaque fois ke l'on ouvre le prog

signaler à un administrateur
Commentaire de ludovicanceaux le 23/06/2004 15:04:41

en fait c'est sans avoir a cliké sur le colums a chaque foi ke l'on ouvre

signaler à un administrateur
Commentaire de labout le 25/06/2004 19:07:48

Il suffit d'alimenter la grille à partir d'une requête comportant une clause order by sur le champ souhaité.

signaler à un administrateur
Commentaire de ludovicanceaux le 25/06/2004 21:27:08

alor là c pô pour t'enbêter mai j'ai rien compris

signaler à un administrateur
Commentaire de ludovicanceaux le 03/07/2004 15:31:37

dis moi Labout je n'ai pô recu de réponse de ta part, genre tu pe etre plus clair ou pô

signaler à un administrateur
Commentaire de labout le 03/07/2004 20:19:45

Pa seu le temps. Voici :
Si tu reprends le code du test dans le form load
gocnx.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\immo.mdb;Persist Security Info=True"
        gocnx.Open()
        ' pour faire moins d'enregistrements
        rs = gocnx.Execute("select * from immo ") 'where montant>21000")
tu remplace le ligne rs par
        rs = gocnx.Execute("select * from immo ") 'where montant>21000" order by noinv)
et d'entré la listView sera classée par N° dinvestissement grace à
la clause order by de la requête. Si c'est par montant ce sera
order by montant.

Je pense avoir été clair.
@+

signaler à un administrateur
Commentaire de ludovicanceaux le 03/07/2004 21:20:24

je te remerci c'est parfaitement clair
en tou cas félicitation très bonne source

signaler à un administrateur
Commentaire de gwiwi le 30/07/2004 15:57:35

Tres bonne source en effet, mais ... le tri des date ne fonctionne pas chez moi ?

Est ce chez moi ou ca ne marche pas du tout ?

signaler à un administrateur
Commentaire de ludovicanceaux le 30/07/2004 17:41:55

nan ca doi etre chez toi, car pour moi j'ai pris sa source et je l'ai intégré ds la mienne et ca marche regarde par toi même
http://www.vbfrance.com/code.aspx?id=24114

signaler à un administrateur
Commentaire de labout le 30/07/2004 18:18:05

Merci ludovic en effet cela marche, il y a un défaut pour les zones texte du type
01
000001
000002
Un coup surt 2 je n'ai pas le temps en ce moment mais je vais le résoudre.
@+

signaler à un administrateur
Commentaire de labout le 31/07/2004 11:39:02

J'ai amélioré sur le tri et ajout d'icône d'entete pour tri
et impression possible.

signaler à un administrateur
Commentaire de sony20 le 04/08/2004 16:36:10

rebonjour c'est encore moi ... toujours encore débutant
j'ai suivi votre conseil et j'essaye d'utiliser cette dll :
j'ai toujours le même problème, j'ai une erreur :
Une exception non gérée du type 'System.IO.FileNotFoundException' s'est produite dans system.windows.forms.dll

Informations supplémentaires : Le fichier ou l'assembly nommé System.Windows.Forms, ou l'une de ses dépendances, est introuvable.

Il se plante sur la ligne Public Class Form1 (mon formulaire principal d'appel)
Avez-vous une idée sur ce que j'ai peut-être mal ou pas fait ?
Merci d'avance.

signaler à un administrateur
Commentaire de labout le 04/08/2004 19:23:49

non je ne vois pas pourquoi.
Une question est-ce que mon exemple projet test fonctionne. Si ce n'est pas le cas c'est sans doute un problème de version. J'utilise la 2003
@+

signaler à un administrateur
Commentaire de sony20 le 05/08/2004 08:46:58

vous avez raison : j'utilise 2002
zut ...
merci

signaler à un administrateur
Commentaire de chris81 le 18/08/2004 18:20:22

salut,
genial ton code mais a quoi te servent les api que tu utilise?
merci a+

signaler à un administrateur
Commentaire de labout le 19/08/2004 12:55:44

Pour mettre des icçones sur la ligne de titre lors du tri si Icone est à true

signaler à un administrateur
Commentaire de ludovicanceaux le 19/08/2004 12:59:04

si on pe le faire pk tu ne l'a pô fai marché sur ta source car j'ai voulu te demandé mai je crois ke je t'ai assez embeter avec cette source dc j'ai lacher l'affaire

signaler à un administrateur
Commentaire de chris81 le 19/08/2004 19:51:21

salut tt le monde,
je trouve cette source assez bien mais j'arrive pas a comprendre comment tu fais le tri.
si un jour tu as le tmps tu pourrais me l'expliquer ou qqun d'autre merci

signaler à un administrateur
Commentaire de labout le 20/08/2004 13:19:54

c'est dans la region Trie de la classe ListviewEx fonction
lv_ColumnClick qui appelle la fonction compare grace à
Implements IComparer
@+

signaler à un administrateur
Commentaire de labout le 20/08/2004 13:22:27

Pour Ludovicanceaux
Si tu veux des icônes tu mets la propriété
Icone à true si toutefois cela ne te fatiques pas trop.
Ce que je n'ai pas fait dans le test.
A vous de travailler un peu aussi
@+

signaler à un administrateur
Commentaire de ludovicanceaux le 21/08/2004 01:17:25

oui mai la différence c ke en fait d'apres ce que j'ai pû comprendre tu programme depuis 16 ans, bah moi je fait ca seulement depuis 8 mois.
En + je ne connai pô encor le language des dlls tu voi pour l'instant je maitrise pô tro coté dll(J'ai commencé à m'interressé aux dll depuis la première kestion ke je t'ai posé).
c pô grav je vai essayé de me débrouiller seul.
slt @+

signaler à un administrateur
Commentaire de julien__ le 17/09/2004 23:44:38

Très très fort les codes de M. Labout... On ne peut qu'aprécier.

signaler à un administrateur
Commentaire de couledoux le 15/10/2004 14:56:27

Lebou,

Je travaille en VB6 et je souhaiterais touver un composant de type Grid (ListView, DataGrid ou autre) qui me permetrais une coloration d'une ligne sur 2 , comme dans ton exemple.

signaler à un administrateur
Commentaire de Stephane33 le 04/10/2005 08:32:25 administrateur CS

Bonjour,
Existerait-il un moyen, pour figer la première colonne de cette listview, à l'identique de la première ligne (entête des colonnes)
Cela permettrai d'avoir toujours visible l'item principal et de faire défiler les subitems. (Un peu comme le figer les volets d'excel)
D'avance Merci...

signaler à un administrateur
Commentaire de labout le 04/10/2005 20:39:59

cela doit pouvoir se faire en se creusant. Je n'ai plus le temps ayant retrouvé un job
ou je n'utilise pas VB.NET.
Bon courage
@+

signaler à un administrateur
Commentaire de BLU le 18/12/2007 14:30:57

Bonjour,
Je viens de tester ce module sous VB 20005. Son intégration y ets simple et le code exmple permet une compréhension assez rapide.

Juste une chose, le tri fonctionne mais lorsque l'on change de colonne, la 1ère concerve l'icône ...
Avez vous une idée de la cause ???
Merci d'avance.
Benoit

signaler à un administrateur
Commentaire de labout le 20/12/2007 19:30:49

Non le fonctionnement est en effet différent avec 2005
je n'ai plus le temps pour m'y pencher. Peut-être quand je serai à la retraite !

signaler à un administrateur
Commentaire de julienmorvan le 09/01/2008 09:25:29

Super source, testée sous 2008 BETA, marche super!

Merci

signaler à un administrateur
Commentaire de panpan le 24/01/2008 09:49:47

Hello,
Vraiment super comme source.

Mais il y a juste une chose qui me bloque, comment je peux faire pour récupérer l'ID de la ligne séléctionnée?

Je n'ai pas trouvé la méthode .getselected

@++

signaler à un administrateur
Commentaire de rimas10 le 09/02/2008 03:20:00

Salut J'ai VB 2008 et ton code ca marche pas chez meme apres conversion

signaler à un administrateur
Commentaire de labout le 10/02/2008 15:14:30

la source datant de 2004 version 2003 avec microsoft il n'y a rien d'étonnant.
Il faut la réécrire en s'inspirant des sources actuelles.
Je l'ai ré écrite pour 2005 pas pas pour 2008

signaler à un administrateur
Commentaire de stephane0076 le 31/03/2008 11:55:30

Ptit souci, la dernière colonne à systématiquement une taille démesurée (trop grande).
Comment faire pour bloquer les paramètres de taille des colonnes par défaut ?
J'ajoute mes colonnes en code avec la commande du type :
" .Columns.Add("Référence", 95, HorizontalAlignment.Center) "

La valeur 95 n'est pas conservé et ce, dès le remplissage de la ListView.

Comment puis je faire ?

signaler à un administrateur
Commentaire de labout le 01/04/2008 19:20:56

oui à partir de VB2005 et suivant cela fonctionne mal et je ne sais pourquoi.
Je n'ai plus le temps de me pencher sur le problème

signaler à un administrateur
Commentaire de samm13 le 12/04/2008 10:58:06

Tres bonne source en effet, mais ... en VB6 entreprise n a  pas fonctionné le tri des valeurs numérique?

Est ce chez moi ou ca ne marche pas du tout ?

signaler à un administrateur
Commentaire de labout le 13/04/2008 09:54:33

ce n'est pas fait pour VB6 mais pour VB.NET et il faut avoir le framework version 2003

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.