Listbox étendue

Soyez le premier à donner votre avis sur cette source.

Vue 10 807 fois - Téléchargée 730 fois

Description

Il m'arrive souvent dans mes applications d'utiliser une ListBox et d'implémenter des fonctionalités du sytle copier/coller. Je me suis dit qu'un contrôle personalisé pourrait régler la question (presque ?) définitivement. J'ai donc hérité de la classe ListBox pour récupérer toutes les bonnes choses et j'ai complété avec les fonctionalités : copier, coller, couper, annuler, rétablir, décalage vers le haut et décalage vers le bas. Des méthodes publiques permettent de mettre en oeuvre tout ça mais j'ai voulu automatiser un peu pus. J'ai donc créé des propriétés de type ToolStipButton qui permettent de mettre en relation des boutons d'une barre d'outils avec le contrôle pour relier directement les méthodes correspondantes, en ajustant la propriété Enabled pour faire plus joli. Le résultat est bien pratique et optimise le développement à base de listes.
Une ListBox peut contenir des objets quelconques, j'en ai tenu compte dans mon contrôle dont les collections, bien que génériques, acceptent des types Object. Vous pourrez constater que le formulaire de test contient très peu de code... puisque pratiquement toutes les opérations nécessaires sont prises en charge par le contrôle. J'ai créé une classe toute simple pour ce test, constuée de deux String.
Ce n'est qu'une première version toute fraîche, alors je ne vous garantis pas un fonctionnement irréprochable.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

argoth
Messages postés
12
Date d'inscription
vendredi 23 mai 2003
Statut
Membre
Dernière intervention
31 août 2007
-
Petite Listbox cool, il serait sympa d'ajouter la possibilité d'exporter le "copier" dans le presse-papier également pour le copier ailleur que dans ta ListBox.

Sinon code clair, simple et assez commenté.

Un ptit 8/10
bestmomo
Messages postés
132
Date d'inscription
samedi 25 mai 2002
Statut
Membre
Dernière intervention
31 août 2007
-
Salut ! Merci pour les commentaires. En ce qui concerne le presse-papier étant donné qu'il s'agit d'une classe spécifique je ne vois pas trop l'intérêt de la mémoriser dans le presse-papier, à part de livrer une représentation textuelle telle que livrée dans la liste. Sinon avec une ligne de code à ajouter aux fonctions copier et coller on peut facilement faire ça.
leproc
Messages postés
81
Date d'inscription
lundi 26 septembre 2005
Statut
Membre
Dernière intervention
22 octobre 2008
-
Il y a de bonnes idée dans ta source, et les bouttons sont bien fait. Et comme je vien de trouver la solution pour une de mes source dans ton code c'est encore mieu.

Pareil 8/10
cs_Malkuth
Messages postés
268
Date d'inscription
samedi 22 février 2003
Statut
Membre
Dernière intervention
24 avril 2013
2 -
quand on utilise une listbox sur des types complex, on as la propriété DisplayMember pour indiquer comment récupéré le text a affiché, pourquoi ne pas rajouté une propriété DisplayImage pour pouvoir incorporé une icone devant le texte affiché et une autre propriété DefaultImage qui s'affiche si l'objet retourne autre chose qu'une image sur la propriété définie par DisplayImage :)

Sinon c'est impec!

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.