Multiplier votre capacite de memorisation par 10
Page d acceuil Acceuil
Bienvenue sur votre bureau MetaComputer
Page d acceuil Mes licences
Acquerir un logiciel ou un service MetaComputer
Page d acceuil Gestion commerciale :
Devis, commandes, stock...
connexion à modabbir bureau
Se retrouver dans un véritable marché
Page d acceuil Hassib (comptabilite generale) :
Saisir, importer votre balance..
Sortir vos etats fiscaux,
Envoyer votre declaration via internet
Page d acceuil Adae : Gestion de paye.. :
Gestion de personnels,
elaborer bulletins de paye
effectuer la declaration de CNSS
Page d acceuil Meta Clouds = MetaUSB.. :
Votre espace de stockage offert par
MetaComputer. c'eat aussi lié à vos base de données,
si vous travaillez avec une application MetaComputer
Page d acceuil Al Morakib
pour surveiller et controler par cameras
ma maison, mon lieu de travail, mes depots...
Page d acceuil Mes PCs :pour surveiller et controler
mes ordinateurs, ceux de mes enfants
et meme les pcs du lieu de travail
Page d acceuil Service Meta GPS :
Reperer vos vehicules
Suivre et controler a distance
tous vos vehicules..
Page d acceuil Meta FAX
Envoyer des FAX sans ligne
et sans apareil
Decoller...
Page d acceuil Emailer
Envoyer à des Miliers
des e-mails de prospection
Page d acceuil Service MetaSMS :
Envoyer et gerer vos SMS
Faire des compagnes publicitaires
Avec des résultats sures et optimaux
Page d acceuil Meta-eEntreprise :
Votre entreprise sur le net..
Lancer, suivre une action commerciale
Page d acceuil Meta-eFormation :
Des supports de formation tres adaptés
à votre développement personnel,
A une activité professionnelle de pointe...
Page d acceuil jeux :
jeux pour les enfants
aussi pour les grands
Super-Logiciels pour vous
Al Modabbir Beton
Une version de Al Modabbir destinée aux entreprises dont l'activité est la production et vente du beton ...
Morakib PC
Al Morakib
Logiciel de serveillance par camera et par internet ...
Al Tana9olat
Solution complète de la gestion des gares:
Quitances, voyages, loyers, ...
Plus
Projets pour vous
Net sou9 / e-souk
NetFavoris 
NOUS |  contacter-nous
Avenue des F.A.R. Rsidence Niama N6 - Ttouan (Maroc)
Tl :(+212) 8 90 60 52 25
Fax :(+212) 5 39 97 25 15
Mobile :(+212) 6 61 10 74 37
Email :mce@meta-computer.com
 

Acceuil  vb.net(513)  Vb dot net et ListView
Vb dot net et ListView 2011-02-09

Comment colorier une cellule en mode Details


L'objet ListViewSubItem a une propriété BackColor mais pour que l'assignation soit effective il ne faut pas oublier de modifier la propriété UseItemStyleForSubItems du ou des ListViewItem concerné(s) en lui attribuant la valeur False.

Si vous souhaitez effectuer cette manoeuvre par programmation, voici un exemple:
Coloration en jaune de toute la première colonne d'un ListView1

Imports System
Imports System.Drawing
Imports System.Windows.Forms
' ...
Dim lvi As ListViewItem
For Each lvi In Me.ListView1.Items
lvi.UseItemStyleForSubItems = False
lvi.SubItems(0).BackColor = Color.Yellow
Next
Me.ListView1.View = View.Details



Comment trier les colonnes d'une listview en cliquant sur leurs intitulés ?
---------------------------------------------------------------------------

L'objet ListView dispose d'une propriété ListViewItemSorter de type IComparer. Cela permet d'implémenter sa propre gestion du tri.
Pour ce faire, il faut créer une classe dérivant de IComparer implémentant la méthode Compare.

Class ListViewItemComparer
Implements IComparer
Private col As Integer
Private sortOrder As SortOrder

Public Sub New()
col = 0
sortOrder = Windows.Forms.SortOrder.Ascending
End Sub

Public Sub New(ByVal column As Integer)
col = column
sortOrder = Windows.Forms.SortOrder.Ascending
End Sub

Public Sub New(ByVal column As Integer, ByVal s As SortOrder)
col = column
sortOrder = s
End Sub

Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements IComparer.Compare
If sortOrder = Windows.Forms.SortOrder.Ascending Then
Return String.Compare(CType(x, ListViewItem).SubItems(col).Text, CType(y, ListViewItem).SubItems(col).Text)
Else
Return String.Compare(CType(y, ListViewItem).SubItems(col).Text, CType(x, ListViewItem).SubItems(col).Text)
End If

End Function

End Class


Ensuite, il suffit d'intercepter le click sur les colonnes (événement ColumnClick) et d'instancier cette classe.

Private Sub ListView1_ColumnClick(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.ColumnClickEventArgs) Handles ListView1.ColumnClick
If Me.ListView1.Sorting = SortOrder.Ascending Then
Me.ListView1.Sorting = SortOrder.Descending
Else
Me.ListView1.Sorting = SortOrder.Ascending
End If
Me.ListView1.ListViewItemSorter = New ListViewItemComparer(e.Column, Me.ListView1.Sorting)
End Sub


Remarque : J'effectue ici une comparaison de chaines, il faudra implémenter différement si on compare des nombres par exemple.


Comment fait-on une liste d'objet avec le contrôle ListView ?
----------------------------------------------------------------------------------------

Dans l'exemple suivant, j'utilise des icones stockés dans un contrôle ImageList Partons du cas suivant :


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

With Me.ListView1
.LargeImageList = Me.ImageList1
.MultiSelect = False
.Activation = ItemActivation.TwoClick
.View = View.LargeIcon
End With
For Cmpt As Int32 = 0 To 5
Me.ListView1.Items.Add("Elément " & Cmpt, Cmpt)
Next

End Sub


Notez que je passe l'index de l'image souhaitée pour l'élément directement dans le Add. Une écriture plus lisible serait :


For Cmpt = 0 To 5
Dim ObjetList As New ListViewItem
With ObjetList
.Text = "Elément " & Cmpt
.ImageIndex = Cmpt
End With
Me.ListView1.Items.Add(ObjetList)
Next


Cette écriture est souvent plus intéressante que la première parce qu'elle donne accès à d'autres propriétés de mise en forme des éléments. Ainsi le code suivant met aussi la police en rouge pour un élément sur deux et en italique pour tous les éléments :


For Cmpt = 0 To 5
Dim ObjetList As New ListViewItem
With ObjetList
.Text = "Elément " & Cmpt
.ImageIndex = Cmpt
If Cmpt Mod 2 = 0 Then .ForeColor = Color.Red
.Font = New Font("Arial", 10, FontStyle.Italic)
End With
Me.ListView1.Items.Add(ObjetList)
Next



Comment fait-on une liste détaillée avec un contrôle ListView ?
---------------------------------------------------------------------------------------------

Une liste de ce type est un contrôle ListView dont la propriété View vaut "Details". L'exemple suivant est une liste de fichier classique ou les fichiers "Zip" seront affichés en vert.


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim Repertoire As New System.IO.DirectoryInfo("d:usertutos")
Dim ListeFichier() As System.IO.FileInfo = Repertoire.GetFiles
Me.ListView1.View = View.Details
With Me.ListView1
.Columns.Add("Nom", 200, HorizontalAlignment.Center)
.Columns.Add("Taille", 80, HorizontalAlignment.Right)
.Columns.Add("Date", 100, HorizontalAlignment.Center)
End With
Dim cmpt As Int32
For cmpt = 0 To ListeFichier.GetUpperBound(0)
With Me.ListView1.Items.Add(ListeFichier(cmpt).Name)
.SubItems.Add(ListeFichier(cmpt).Length.ToString)
.SubItems.Add(ListeFichier(cmpt).CreationTime.ToString)
If ListeFichier(cmpt).Extension.IndexOf("zip") > 0 Then
.ForeColor = Color.Green
End If
End With
Next

End Sub
Commentaires des visiteurs :
Ajouter votre commentaire :
Nom :
E-mail :
Commentaire :


Espace Abonné

Mot passe oublié?

Créez un compte maintenant.
Publicité
 
Copyright ©2020. Metacomputer Engineering s.a.r.l . tous les droits réservés