Esta documentación está archivada y no tiene mantenimiento.

Control ListBox para usuarios de Visual Basic 6.0

Visual Studio 2005

El control ListBox de Visual Basic 6.0 se ha reemplazado por el control ListBox o el control CheckedListBox en Visual Basic 2005. Los nombres de algunas propiedades, métodos, eventos y constantes son diferentes y, en algunos casos, existen diferencias de comportamiento.

Diferencias conceptuales

ListBox activado

En Visual Basic 6.0, la propiedad Style de un control ListBox determina si aparece una casilla de verificación junto a cada elemento de texto. Se pueden seleccionar varios elementos en ListBox aunque la propiedad MultiSelect esté establecida en False; para ello, debe activarse la casilla de verificación situada junto a estos elementos. No existe modo alguno de determinar mediante programación el estado de activación de un elemento; si necesita esta funcionalidad, deberá utilizar el control ListView.

En Visual Basic 2005, el nuevo control CheckedListBox muestra las casillas de verificación al lado de cada elemento; las casillas de verificación ya no pueden mostrarse en el control ListBox. El control CheckedListBox permite determinar mediante programación el estado de activación de cada elemento a través de una colección CheckedItemCollection.

Columns (Propiedad)

En Visual Basic 6.0, la propiedad Columns tomaba un entero que especificaba el número de columnas que se iban a mostrar.

En Visual Basic 2005, la propiedad MultiColumn toma un valor booleano y la propiedad ColumnWidth toma un entero que especifica el ancho en píxeles. Si el ancho del control ListBox cambia en tiempo de ejecución, es posible que tenga que establecer la propiedad ColumnWidth en cada columna.

ItemCheck (Evento)

En el control ListBox de Visual Basic 6,0, cuando se producía un evento ItemCheck, ya se había cambiado el estado de activación.

En el control CheckedListBox de Visual Basic 2005, cuando se desencadena el evento ItemCheck, el estado de activación aún no ha cambiado. Puede obtener el valor pendiente del argumento ItemCheckEventArgs transferido al evento.

Cambios de código para el control ListBox

En los ejemplos siguientes se muestran las diferencias que existen entre las técnicas de codificación de Visual Basic 6.0 y Visual Basic 2005.

El código se modifica para agregar y eliminar elementos en un control ListBox

El código siguiente muestra cómo se agregan y eliminan elementos de 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 2005
' 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)

El código se modifica para obtener acceso a elementos específicos de un control ListBox

El código siguiente muestra cómo se devuelve el valor de un elemento de 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(1)
End Function
' Visual Basic 2005
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

El código se modifica para determinar los elementos activados en un control CheckedListBox

El código siguiente muestra cómo se determina el estado de activación de elementos en un control 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 2005
' 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

Equivalencias de propiedades, métodos y eventos del control ListBox

En las siguientes tablas se enumeran propiedades, métodos y eventos de Visual Basic 6.0 con sus equivalentes en Visual Basic 2005. No se enumeran aquellas propiedades, métodos y eventos que tienen el mismo nombre y el mismo comportamiento. Donde corresponde, las constantes aparecen con sangría debajo de la propiedad o método. Salvo que se indique lo contrario, todas las enumeraciones de Visual Basic 2005 se asignan al espacio de nombres System.Windows.Forms.

Esta tabla proporciona vínculos a temas en los que se explican las diferencias de comportamiento. Cuando no existe un equivalente directo en Visual Basic 2005, se proporcionan vínculos a temas en los que se incluyen alternativas.

Propiedades

Visual Basic 6.0 Equivalente en Visual Basic 2005

Appearance

Nueva implementación. Para obtener más información, vea Propiedades Appearance y BorderStyle para usuarios de Visual Basic 6.0.

BackColor

BackColor

NoteNota

Los colores se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Comportamiento del color para los usuarios de Visual Basic 6.0.

Columns

MultiColumn y ColumnWidth

Container

Parent

DataChanged

DataField

DataFormat

DataMember

DataSource

Nueva implementación. Para obtener más información, vea Acceso a datos para usuarios de Visual Basic 6.0.

DragIcon

DragMode

Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0.

Font Font

FontBold

FontItalic

FontName

FontSize

FontStrikethrough

FontUnderline

Font

NoteNota

Las fuentes se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Objeto Font para usuarios de Visual Basic 6.0.

ForeColor

ForeColor

NoteNota

Los colores se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Comportamiento del color para los usuarios de Visual Basic 6.0.

Height

Height, Size

NoteNota

Las coordenadas se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Sistema de coordenadas para usuarios de Visual Basic 6.0.

HelpContextID

Nueva implementación. Para obtener más información, vea Compatibilidad con la Ayuda para usuarios de Visual Basic 6.0.

HWnd

Handle

Index

Nueva implementación. Para obtener más información, vea Matrices de controles para usuarios de Visual Basic 6.0.

IntegralHeight

IntegralHeight

ItemData

Nueva implementación. Para obtener más información, vea No se puede actualizar la propiedad ItemData.

Left

Left

NoteNota

Las coordenadas se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Sistema de coordenadas para usuarios de Visual Basic 6.0.

List

Items

ListCount

Count (List.Count)

ListIndex

SelectedIndex

MouseIcon

Nueva implementación. Para obtener más información, vea No se puede personalizar la propiedad MousePointer.

MousePointer

Cursor

Para obtener una lista de constantes, vea MousePointer para usuarios de Visual Basic 6.0.

MultiSelect

SelectionMode

NewIndex

Nueva implementación. Para obtener más información, vea No se puede actualizar la propiedad NewIndex.

OLEDragMode

OLEDropMode

Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0.

Parent

Método FindForm

SelCount

Count (SelectedItem.Count)

Selected

GetSelected, SetSelected (control ListBox)

GetItemChecked, SetItemChecked (control CheckedListBox)

Style

Nueva propiedad de implementación. 0 – Standard se asigna al control CheckedListBox; 1 – Checkbox se asigna al control CheckedListBox.

ToolTipText

Componente ToolTip

Para obtener más información, vea Compatibilidad de la información sobre herramientas para usuarios de Visual Basic 6.0.

Top

Top

NoteNota

Las coordenadas se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Sistema de coordenadas para usuarios de Visual Basic 6.0.

WhatsThisHelpID

Nueva implementación. Para obtener más información, vea Compatibilidad con la Ayuda para usuarios de Visual Basic 6.0.

Width

Width, Size

NoteNota

Las coordenadas se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Sistema de coordenadas para usuarios de Visual Basic 6.0.

Métodos

Nombre Equivalente en Visual Basic 2005

AddItem

Add

AddRange

Insert

Clear

Clear

Drag

Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0.

Move

SetBounds

NoteNota

Las coordenadas se controlan de forma diferente en Visual Basic 2005. Para obtener más información, vea Sistema de coordenadas para usuarios de Visual Basic 6.0.

OLEDrag

Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0.

RemoveItem

Remove

SetFocus

Focus

ShowWhatsThis

Nueva implementación. Para obtener más información, vea Compatibilidad con la Ayuda para usuarios de Visual Basic 6.0.

ZOrder

Método BringToFront o SendToBack

Eventos

Visual Basic 6.0 Equivalente en Visual Basic 2005

DblClick

DoubleClick

DragDrop

DragOver

Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0.

GotFocus

Enter

ItemCheck

ItemCheck (sólo CheckedListBox)

LostFocus

Leave

OLECompleteDrag

OLEDragDrop

OLEDragOver

OLEGiveFeedback

OLESetData

OLEStartDrag

Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0.

Scroll

Nueva implementación. Para obtener más información, vea Propiedad TopIndex y evento Scroll para usuarios de Visual Basic 6.0.

Validate

Validating

Notas de actualización

Durante la actualización, si la propiedad Style de un control Listbox de Visual Basic 6.0 está establecida en 1 – Checkbox, se actualiza al control CheckedListBox; en caso contrario, se actualiza al control ListBox.

Vea también

Mostrar: