Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ListView largeur colonne en mode View.List

6 réponses
Avatar
cyrille
Salut,

je suis toujours en train de courrir apr=E8s la maitrise du control ListV=
iew.

comment contr=F4ler ou d=E9clencher le calcul de la largeur des colonnes =
en mode View.List ???
s'il faut forc=E9mment surcharger la classe ListView, quel sont les =E9ve=
nnements =E0 traiter ?

merci d'avance pour vos guidances,
cyrille

6 réponses

Avatar
LEBRUN Thomas
Pas compris ce que tu veux faire.......

A+

-------------------
LEBRUN Thomas
http://morpheus.developpez.com


"cyrille" wrote:

Salut,

je suis toujours en train de courrir après la maitrise du control ListView.

comment contrôler ou déclencher le calcul de la largeur des colonnes en mode View.List ???
s'il faut forcémment surcharger la classe ListView, quel sont les évennements à traiter ?

merci d'avance pour vos guidances,
cyrille



Avatar
cyrille
LEBRUN Thomas wrote:
Pas compris ce que tu veux faire.......



comment contrôler ou déclencher le calcul de la largeur des c olonnes en mode View.List ???





Et bien en mode View.List la colonne à une certaine largeure.
Dès fois cette largeur n'est pas suffisante pour avoir les textes de s items en entier,
ceux-ci sont tronqués et postfixés de ".."
D'autres fois la largeur est suffisante.
On voit bien que ListView calcule cette largeure à certains moment.

Donc je voudrais forcer ce calcul ou forcer la largeur
afin d'afficher les textes en entier.
j'en est besoin lorsque je change un texte pour un plus long ou quand je change la font.

j'espère avoir été plus clair ;o)
cyrille
Avatar
Zoury
Salut Cyrille! :O)

1. Tu peux envoyé un message LVM_SETCOLUMNWIDTH (exemple en VB 6.0)
http://support.microsoft.com/default.aspx?scid=kb;en-us;147666
http://support.microsoft.com/default.aspx?scid=kb;en-us;246364

2. Tu peux boucler le contenu de la colonne et obtenir la plus grande
largeur nécessaire à l'aide de Graphics.MeasureString() et Math.Max().

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic classique
Le français se refait une beauté, parlons en :
http://www.orthographe-recommandee.info/
"cyrille" a écrit dans le message de
news:
LEBRUN Thomas wrote:
Pas compris ce que tu veux faire.......



comment contrôler ou déclencher le calcul de la largeur des colonnes en




mode View.List ???

Et bien en mode View.List la colonne à une certaine largeure.
Dès fois cette largeur n'est pas suffisante pour avoir les textes des items
en entier,
ceux-ci sont tronqués et postfixés de ".."
D'autres fois la largeur est suffisante.
On voit bien que ListView calcule cette largeure à certains moment.

Donc je voudrais forcer ce calcul ou forcer la largeur
afin d'afficher les textes en entier.
j'en est besoin lorsque je change un texte pour un plus long ou quand je
change la font.

j'espère avoir été plus clair ;o)
cyrille
Avatar
cyrille
> 1. Tu peux envoyé un message LVM_SETCOLUMNWIDTH (exemple en VB 6.0)
http://support.microsoft.com/default.aspx?scid=kb;en-us;147666
http://support.microsoft.com/default.aspx?scid=kb;en-us;246364



Merci.

j'ai encore oublié d'aller voir sur msdn avant de poster sur le NG.
Avatar
cyrille
> 1. Tu peux envoyé un message LVM_SETCOLUMNWIDTH (exemple en VB 6.0)
http://support.microsoft.com/default.aspx?scid=kb;en-us;147666
http://support.microsoft.com/default.aspx?scid=kb;en-us;246364



Bon, j'ais essayé.

ça fonctionne très bien quand le ListView est en mode View.Details,
par contre ça fait rien en mode View.List.
Et c'est justement dans ce cas que j'en ais besoin.

;o{

cyrille
Avatar
Zoury
oui en effet.. tu devras donc utilisé la boucle (solution 2 de mon précédent
message).. :O/

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic classique
Le français se refait une beauté, parlons en :
http://www.orthographe-recommandee.info/