Partager via


Contrôle ListBox pour les utilisateurs de Visual Basic 6.0

Mise à jour : novembre 2007

Le contrôle ListBox dans Visual Basic 6.0 est remplacé par le contrôle ListBox ou CheckedListBox dans Visual Basic 2008. Les noms de certaines propriétés, méthodes, événements et constantes ont changé. En outre, dans certains cas, leur comportement est également différent.

Différences conceptuelles

ListBox activé

Dans Visual Basic 6.0, la propriété Style d'un contrôle ListBox détermine si une case à cocher est affichée à côté de chaque élément de texte. Plusieurs éléments de ListBox peuvent être sélectionnés en activant la case à cocher située en regard de ces éléments même si la propriété MultiSelect a la valeur False. Il n'existe aucun moyen de déterminer par programme l'état activé d'un élément. Si vous avez requis cette fonction, vous devez utiliser à la place un contrôle ListView.

Dans Visual Basic 2008, le nouveau contrôle CheckedListBox affiche des cases à cocher à côté de chaque élément ; vous ne pouvez plus afficher des cases à cocher dans le contrôle ListBox. Le contrôle CheckedListBox vous permet de déterminer par programme l'état activé de chaque élément à travers une collection CheckedListBox.CheckedItemCollection.

Propriété Columns

Dans Visual Basic 6.0, la propriété Columns acceptait un entier spécifiant le nombre de colonnes à afficher.

Dans Visual Basic 2008, la propriété MultiColumn accepte une valeur booléenne et la propriété ColumnWidth un entier spécifiant la largeur en pixels. Si la largeur du contrôle ListBox est modifiée au moment de l'exécution, vous devrez peut-être également définir la propriété ColumnWidth pour chaque colonne.

Événement ItemCheck

Dans le contrôle ListBox de Visual Basic 6.0, lorsqu'un événement ItemCheck était déclenché, l'état activé était déjà changé.

Dans le contrôle Visual Basic 2008CheckedListBox, lorsque l'événement ItemCheck est déclenché, l'état d'activation n'a pas encore changé. Vous pouvez obtenir la valeur en attente à partir de l'argument ItemCheckEventArgs passé à l'événement.

Modifications apportées au code du contrôle ListBox

Les exemples ci-dessous illustrent les différences entre les techniques de codage dans Visual Basic 6.0 et dans Visual Basic 2008.

Modifications apportées au code de l'ajout et de la suppression d'éléments dans le contrôle ListBox

Le code suivant illustre comment ajouter et supprimer des éléments ListBox.

' Visual Basic 6.0
' Add an item at the end of the list.
List1.AddItem "Tokyo"
' Insert an item at the top of the list.
List1.AddItem "Copenhagen", 0
' Remove the first item.
List1.RemoveItem 0
'Visual Basic
' Add an item at the end of the list.
ListBox1.Items.Add("Tokyo")
' Insert an item at the top of the list.
ListBox1.Items.Insert(0, "Copenhagen")
' Remove the first item.
ListBox1.Items.RemoveAt(0)

Modifications apportées au code de l'accès aux éléments spécifiques d'un contrôle ListBox

Le code suivant illustre comment retourner la valeur d'un élément ListBox.

' Visual Basic 6.0
Private Function GetItemText(i As Integer) As String
   ' Return the text of the item using the index:
   GetItemText = ListBox1.List(i)
End Function
' Visual Basic
Private Function GetItemText(ByVal i As Integer) As String
   ' Return the text of the item using the index:
   GetItemText = CStr(ListBox1.Items(i))
End Function

Modifications apportées au code de détermination des éléments activés dans un contrôle CheckedListBox

Le code suivant illustre comment déterminer l'état activé d'éléments dans un contrôle CheckedListBox.

' Visual Basic 6.0
' The Visual Basic 6.0 ListBox control didn't support this scenario,
' a ListView control had to be used instead.
Dim s As String
Dim i As Integer
' Loop through all items
For i = 1 To ListView1.ListItems.Count
   ' If an item is checked, add it to the string
   If ListView1.ListItems(i).Checked = True Then
      s = s & "Checked Item" & CStr(i) & " = " & _
ListView1.ListItems(i) & vbCrLf
   End If
Next
' Determine if any items are checked.
If s <> "" Then
    MsgBox s
End If
' Visual Basic
' Determine if there are any items checked.
If CheckedListBox1.CheckedItems.Count <> 0 Then
  ' If so, loop through all checked items and print results.
  Dim x As Integer
  Dim s As String = ""
  For x = 0 To CheckedListBox1.CheckedItems.Count - 1
      s = s & "Checked Item " & CStr(x + 1) & " = " & _
      CStr(CheckedListBox1.CheckedItems(x)) & ControlChars.CrLf
  Next x
  MessageBox.Show(s)
End If

Équivalences des propriétés, méthodes et événements du contrôle ListBox

Les tableaux ci-dessous répertorient les propriétés, les méthodes et les événements de Visual Basic 6.0, ainsi que leurs équivalents dans Visual Basic 2008. Ces propriétés, méthodes et événements qui ont les mêmes nom et comportement ne sont pas répertoriés. Lorsque des constantes s'appliquent, elles sont présentées en retrait sous le nom de la propriété ou de la méthode. Sauf indication contraire, toutes les énumérations Visual Basic 2008 sont mappées à l'espace de noms System.Windows.Forms.

Ce tableau fournit des liens vers les rubriques qui expliquent des différences de comportement. Lorsqu'il n'existe pas d'équivalent direct dans Visual Basic 2008, des liens vous renvoient vers des rubriques proposant des alternatives.

Propriétés

Visual Basic 6.0

Équivalent Visual Basic 2008

Appearance

Nouvelle implémentation. Pour plus d'informations, consultez Propriétés Appearance et BorderStyle pour les utilisateurs de Visual Basic 6.0.

BackColor

BackColor

Remarque :

Les couleurs sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Comportement des couleurs pour les utilisateurs de Visual Basic 6.0.

Columns

MultiColumn et ColumnWidth

Container

Parent

DataChanged

DataField

DataFormat

DataMember

DataSource

Nouvelle implémentation. Pour plus d'informations, consultez Accès aux données pour les utilisateurs de Visual Basic 6.0.

DragIcon

DragMode

Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0.

FontFont

FontBold

FontItalic

FontName

FontSize

FontStrikethrough

FontUnderline

Font

Remarque :

Les polices sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Objet Font pour les utilisateurs de Visual Basic 6.0.

ForeColor

ForeColor

Remarque :

Les couleurs sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Comportement des couleurs pour les utilisateurs de Visual Basic 6.0.

Height

Height, Size

Remarque :

Les coordonnées sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0.

HelpContextID

Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0.

HWnd

Handle

Index

Nouvelle implémentation. Pour plus d'informations, consultez Tableaux de contrôles pour les utilisateurs de Visual Basic 6.0.

IntegralHeight

IntegralHeight

ItemData

Nouvelle implémentation. Pour plus d'informations, consultez Impossible de mettre à niveau la propriété ItemData.

Left

Left

Remarque :

Les coordonnées sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0.

List

Items

ListCount

Count (List.Count)

ListIndex

SelectedIndex

MouseIcon

Nouvelle implémentation. Pour plus d'informations, consultez Impossible de définir un pointeur de souris personnalisé.

MousePointer

Cursor

Pour obtenir la liste des constantes, consultez MousePointer pour les utilisateurs de Visual Basic 6.0.

MultiSelect

SelectionMode

NewIndex

Nouvelle implémentation. Pour plus d'informations, consultez Impossible de mettre à niveau la propriété NewIndex.

OLEDragMode

OLEDropMode

Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0.

Parent

Méthode FindForm

SelCount

Count (SelectedItem.Count)

Selected

GetSelected, SetSelected (contrôle ListBox)

GetItemChecked, SetItemChecked (contrôle CheckedListBox)

Style

Propriété de nouvelle implémentation. 0 – Standard est mappée vers le contrôle CheckedListBox, 1 – Checkbox est mappée vers le contrôle CheckedListBox.

ToolTipText

Composant ToolTip

Pour plus d'informations, consultez Prise en charge des info-bulles pour les utilisateurs de Visual Basic 6.0.

Top

Top

Remarque :

Les coordonnées sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0.

WhatsThisHelpID

Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0.

Width

Width, Size

Remarque :

Les coordonnées sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0.

Méthodes

Nom

Équivalent Visual Basic 2008

AddItem

Add

AddRange

Insert

Clear

Clear

Drag

Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0.

Move

SetBounds

Remarque :

Les coordonnées sont gérées différemment dans Visual Basic 2008. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0.

OLEDrag

Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0.

RemoveItem

Remove

SetFocus

Focus

ShowWhatsThis

Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0.

ZOrder

Méthode BringToFront ou SendToBack

Événements

Visual Basic 6.0

Équivalent Visual Basic 2008

DblClick

DoubleClick

DragDrop

DragOver

Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0.

GotFocus

Enter

ItemCheck

ItemCheck (CheckedListBox uniquement)

LostFocus

Leave

OLECompleteDrag

OLEDragDrop

OLEDragOver

OLEGiveFeedback

OLESetData

OLEStartDrag

Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0.

Scroll

Nouvelle implémentation. Pour plus d'informations, consultez Propriété TopIndex et événement Scroll pour les utilisateurs de Visual Basic 6.0.

Validate

Validating

Mettre à niveau des remarques

Lors de la mise à niveau, si la propriété Style d'un contrôle Listbox de Visual Basic 6.0 prend la valeur 1 – Checkbox, elle est mise à niveau vers le contrôle CheckedListBox ; sinon, elle est mise à niveau vers le contrôle ListBox.

Voir aussi

Référence

Vue d'ensemble du contrôle ListBox (Windows Forms)

Vue d'ensemble du contrôle ListBox (Windows Forms)

Vue d'ensemble du contrôle CheckedListBox (Windows Forms)