Ordre des colonnes ListView [Résolu]

crocejf2000 260 Messages postés lundi 27 janvier 2003Date d'inscription 27 août 2008 Dernière intervention - 11 oct. 2006 à 17:00 - Dernière réponse : crocejf2000 260 Messages postés lundi 27 janvier 2003Date d'inscription 27 août 2008 Dernière intervention
- 11 oct. 2006 à 17:42
Bonjour a vous tous,

J'ai actuellement dans mon application en VS 2003 Framework 1.1 une listview en mode détail.

Cette listview possede une propriétée AllowColumnReorder qui permet à l'utilisateur de 'bouger' ses colonnes comme il le souhaite, a la manière Outlook.

Le probleme est le suivant : Comment sauvegarder la position de ces colonnes et aussi de pouvoir les remettre en place lors d'une future ouverture de la Form ?

J'ai bien cherché sur les forum et sur google mais je ne trouve rien.
Merci pour votre aide,

A+,Hart
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
crocejf2000 260 Messages postés lundi 27 janvier 2003Date d'inscription 27 août 2008 Dernière intervention - 11 oct. 2006 à 17:42
3
Merci
Bon je me répond à moi meme, j'ai enfin trouvé la réponse donc au cas ou ca intéresserai quelqu'un (j'arrive a me prouver a moi meme que que je n'avais donc pas encore assez cherché !!) :

J'ai trouvé cette source sur un site Japonais (rien que ca) :
http://dobon.net/vb/dotnet/control/lvcolumnorder.html

The code :
Private

Declare
Auto
Function SendMessage
Lib "user32.dll" ( _

ByVal hWnd
As IntPtr,
ByVal msg
As
Integer, _

ByVal wParam
As
Integer,
ByVal lParam()
As
Integer)
As
Integer

Private
Const LVM_FIRST
As
Integer = &H1000

Private
Const LVM_GETCOLUMNORDERARRAY
As
Integer = LVM_FIRST + 59

Private
Const LVM_SETCOLUMNORDERARRAY
As
Integer = LVM_FIRST + 58
'----------------------------------------------
Private

Function GetColumnHeaderOrder(
ByVal lv
As ListView)
As
Integer()

Dim count
As
Integer = lv.Columns.Count

Dim order(count)
As
IntegerSendMessage(lv.Handle, LVM_GETCOLUMNORDERARRAY, count, order)

Return order

End
Function

'----------------------------------------------

Private
Sub SetColumnHeaderOrder(
ByVal lv
As ListView,
ByVal order()
As
Integer)SendMessage(lv.Handle, LVM_SETCOLUMNORDERARRAY, order.Length, order)

End
Sub
Pour 10 lignes de code...

Merci a vous,

A+,Hart

Merci crocejf2000 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de crocejf2000

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.