Compartir a través de


Control DataGrid para usuarios de Visual Basic 6.0

Actualización: noviembre 2007

El control DataGrid de Visual Basic 6.0 se ha reemplazado por el control DataGridView de formularios Windows Forms en Visual Basic 2008. Los nombres de algunas propiedades, métodos, eventos y constantes son diferentes y, en algunos casos, existen diferencias de comportamiento.

Diferencias conceptuales

Enlace de datos

El control DataGridView de Visual Basic 2008 no requiere métodos ni eventos específicos de datos, ya que todas las acciones se realizan a través del origen de datos. Debido a esta separación de la presentación y la funcionalidad de los datos, el origen de datos se puede cambiar con o sin entrada de interfaz de usuario. Asimismo, múltiples controles enlazados al mismo origen de datos siempre permanecerán sincronizados.

Ya no son necesarias las propiedades para visualizar y navegar en el control DataGrid (como TabAction, EnterAction, AllowArrows, WrapCellPointer y Scrollable). Por ejemplo, la cuadrícula funciona como si la propiedad Scrollable se estableciese en True: si existen más datos que mostrar, aparece automáticamente una barra de desplazamiento. De manera predeterminada, la navegación por la cuadrícula sigue el modelo de Excel, es decir, el usuario se puede desplazar hacia delante con la tecla TAB y hacia atrás con la combinación de teclas MAYÚS+TAB. Para obtener más información, vea Control predeterminado de teclado y mouse (ratón) en el control DataGridView de formularios Windows Forms.

Propiedad Caption

En Visual Basic 6.0 la propiedad Caption se utilizaba para mostrar una barra de título sobre la cuadrícula; si se dejaba vacía, no se mostraba ninguna barra de título.

El control DataGridView de Visual Basic 2008 no admite barra de título. Sin embargo, puede lograr el mismo efecto mediante un control Label.

Formato de datos

En Visual Basic 6.0, el formato de datos en el control DataGrid se controla utilizando la propiedad DataFormat y un objeto StdDataFormat. El formato se aplica columna por columna.

En el control DataGridView de Visual Basic 2008, el formato se aplica mediante la propiedad Format de un objeto DataGridViewCellStyle. El formato se puede aplicar a celdas, columnas o filas individuales. Para obtener más información, vea Formato de datos en el control DataGridView de formularios Windows Forms.

Propiedad hWndEditor

En Visual Basic 6.0, para pasar el identificador de ventana asignado a una ventana de edición del control DataGrid a una llamada a la API de Windows se utiliza la propiedad hWndEditor.

El control DataGridView de Visual Basic 2008 no tiene un identificador de ventana independiente en modo de edición; en su lugar, utilice la propiedad Handle del control DataGridView o cualquier control de edición incrustado.

Propiedad MarqueeStyle

En Visual Basic 6.0, la propiedad MarqueeStyle controla el aspecto de una celda o fila seleccionada cambiando el estilo de borde, invirtiendo los colores de primer plano y de fondo o invocando una ventana de edición.

No existe ningún equivalente directo del control DataGridView en Visual Basic 2008. Sin embargo, puede lograr el mismo efecto utilizando una combinación de propiedades SelectionMode, CellBorderStyle y Format. Para obtener más información, vea Modos de selección en el control DataGridView de formularios Windows Forms.

Propiedades SelLength, SelStart, SelText

En el control DataGrid de Visual Basic 6.0, cuando una celda pasa al modo de edición se pueden utilizar las propiedades SelLength, SelStart y SelText para establecer la posición inicial del símbolo de intercalación o para resaltar una parte del texto en la celda.

En el control DataGridView de Visual Basic 2008 ya no existen estas propiedades. Las celdas del control DataGridView se basan en el control TextBox; si agrega código al controlador de eventos EditingControlShowing, se puede tener acceso a las propiedades SelectionLength, SelectionStart y SelectedText del control subyacente.

Dividir vistas

El control DataGrid de Visual Basic 6.0 admite la división de vistas, que permite al usuario mostrar los mismos datos uno al lado de otro. El objeto Split y las propiedades Split, Splits y TabAcrossSplits controlan esta capacidad de mostrar una vista dividida.

En el control DataGridView de Visual Basic 2008 ya no existen estas propiedades. Sin embargo, puede lograr el mismo efecto mediante uno o más controles SplitContainer y varios controles DataGridView. Para duplicar la funcionalidad de la propiedad TabAcrossSplits, puede utilizar la propiedad StandardTab del control DataGridView.

Cambios de código para el control DataGrid

En el código siguiente se muestran las diferencias entre Visual Basic 6.0 y Visual Basic 2008 respecto al modo de resaltar texto de una celda cuando un usuario selecciona la celda en un control DataGridView.

' Visual Basic 6.0
Private Sub DataGrid1_Click()
    DataGrid1.SelStart = 1
    DataGrid1.SelLength = DataGrid1.Text
    MsgBox("The selected text is " & DataGrid1.SelText)
End Sub
' Visual Basic
Private Sub DataGridView1_EditingControlShowing( _
ByVal sender As Object, ByVal e As System.Windows.Forms. _
DataGridViewEditingControlShowingEventArgs) _
Handles DataGridView1.EditingControlShowing
    CType(e.Control, TextBox).SelectionStart = 0
    CType(e.Control, TextBox).SelectionLength = Len(CType(e.Control, _
      TextBox).Text)
    MsgBox("The selected text is " & CType(e.Control, _
      TextBox).SelectedText)
End Sub

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

En las siguientes tablas se muestran propiedades, métodos y eventos de Visual Basic 6.0, junto con sus equivalentes en Visual Basic 2008. No se enumeran aquellas propiedades, métodos y eventos que tienen el mismo nombre y el mismo comportamiento. Salvo que se indique lo contrario, todas las enumeraciones de Visual Basic 2008 se asignan al espacio de nombres System.Windows.Forms.

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

Propiedades

Visual Basic 6.0

Equivalente en Visual Basic 2005

AddNewMode

Nueva implementación. Las operaciones de datos se controlan en el origen de datos. Para obtener más información, vea Mostrar datos en el control DataGridView de formularios Windows Forms.

Align

Dock y Anchor

AllowAddNew

AllowNew (BindingSource)

AllowArrows

Ya no es una propiedad que se pueda ajustar; siempre se permite la navegación mediante flechas. Para obtener más información, vea Control predeterminado de teclado y mouse (ratón) en el control DataGridView de formularios Windows Forms.

AllowDelete

AllowRemove (BindingSource)

AllowRowSizing

AllowUserToResizeRows

AllowUpdate

AllowEdit (BindingSource)

Appearance

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

ApproxCount

Nueva implementación. Las operaciones de datos se controlan en el origen de datos. Para obtener más información, vea Mostrar datos en el control DataGridView de formularios Windows Forms.

BackColor

BackgroundColor

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

Bookmark

Nueva implementación. Ahora se puede obtener acceso directamente a cualquier elemento.

Caption

Nueva implementación. Utilice un control Label para simular una barra de título.

Col

SelectedColumns

ColumnHeaders

ColumnHeadersVisible

Container

Parent; se hereda de Control.

CurrentCellModified

IsCurrentCellDirty, IsCurrentCellInEditMode

CurrentCellVisible

CurrentCell

Nota:
Si la propiedad CurrentCell se establece en una celda que no es visible, la cuadrícula se desplazará para mostrarla (similar a establecer CurrentCellVisible en True).

DataChanged

IsCurrentCellDirty, IsCurrentRowDirty

DataFormats

Objeto DataGridViewCellStyle.

Nota:
El formato se puede establecer para una celda, columna o fila individuales.

DefColWidth

Width Objeto DataGridViewColumn.

DragIcon

DragMode

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

EditActive

IsCurrentCellInEditMode

FirstRow

FirstDisplayedScrollingRowIndex

Font

FontBold

FontItalic

FontName

FontSize

FontStrikethrough

FontUnderline

Font

Nota:
Las fuentes se administran de forma diferente en Visual Basic 2008. Para obtener más información, vea Control de fuentes para usuarios de Visual Basic 6.0.

ForeColor

ForeColor

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

HeadFont

Objeto DataGridViewCellStyle.

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

HeadLines

No hay equivalente directo. Utilice la propiedad WrapMode del objeto DataGridViewCellStyle en combinación con la propiedad ColumnHeadersHeight.

Height

Height, heredada de la clase Control.

Nota:
Las coordenadas se administran de forma diferente en Visual Basic 2008. 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

hWndEditor

Nueva implementación. Utilice Handle.

Index

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

Left

Left, heredada de la clase Control.

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

LeftCol

FirstDisplayedScrollingColumnIndex

MarqueeStyle

No hay equivalente directo. Utilice las propiedades SelectionMode, CellBorderStyle y Format.

RecordSelectors

RowHeadersVisible

Row

SelectedRows

RowDividerStyle

Propiedades GridColor, CellBorderStyle, RowHeadersBorderStyle, ColumnHeadersBorderStyle.

RowHeight

Height

SelBookmarks

Nueva implementación. Ahora se puede obtener acceso directamente a cualquier elemento.

SelEndCol

SelStartCol

SelectedCells, SelectedColumns

SelLength

No hay equivalente directo. Utilice la propiedad SelectionLength en el controlador de eventos EditingControlShowing.

SelStart

No hay equivalente directo. Utilice la propiedad SelectionStart en el controlador de eventos EditingControlShowing.

SelText

No hay equivalente directo. Utilice la propiedad SelectedText en el controlador de eventos EditingControlShowing.

Split

Splits

TabAcrossSplits

Nueva implementación. No se admite la división de vistas directamente; utilice un control SplitContainer.

TabAction

StandardTab

Tag

Nueva implementación.

Text

CurrentCell.Value

Nota:
La propiedad Value devuelve Object; utilice CStr o ToString para convertirlo en String.

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

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

VisibleCols

Método DisplayedColumnCount.

Nota:
En Visual Basic 6.0, las columnas parcialmente visibles siempre se incluyen en el recuento; el método DisplayedColumnCount utiliza un parámetro booleano includePartialColumns para determinar si se incluyen las columnas parcialmente visibles.

VisibleRows

Método DisplayedRowCount.

Nota:
En Visual Basic 6.0, las filas parcialmente visibles siempre se incluyen en el recuento; el método DisplayedRowCount utiliza un parámetro booleano includePartialRows para determinar si se incluyen las filas parcialmente visibles.

WhatsThisHelpID

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

Width

Width, heredada de la clase Control.

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

WrapCellPointer

Ya no es una propiedad que se pueda ajustar; el comportamiento predeterminado es WrapCellPointer = True.

Métodos

Visual Basic 6.0

Equivalente en Visual Basic 2005

CaptureImage

Nueva implementación. No se admite la captura del contenido de un control DataGridView a un control PictureBox.

ClearFields

Nueva implementación. Cuando se vuelve a enlazar, el formato de columna es automático.

ClearSelCols

ClearSelection

ColContaining

IndexOf (DataGridViewColumnCollection)

Drag

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

GetBookmark

Nueva implementación. Los marcadores ya no se admiten.

HoldFields

Nueva implementación. Se conserva el formato de la columna al enlazar.

Move

SetBounds, heredada de la clase Control.

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

Rebind

ResetBindings, heredada de la clase Control.

RowBookmark

Nueva implementación. Los marcadores ya no se admiten.

RowContaining

IndexOf (DataGridViewColumnCollection)

RowTop

GetContentBounds (DataGridViewCell)

Scroll

Nuevo método de implementación. Utilice la propiedad CurrentCell.

SetFocus

Focus

ShowWhatsThis

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

SplitContaining

Nueva implementación. No se admite la división de vistas directamente; utilice un control SplitContainer.

ZOrder

Funciones BringToFront() o SendToBack()

Eventos

Visual Basic 6.0

Equivalente en Visual Basic 2005

AfterColEdit

CellEndEdit

AfterColUpdate

AfterDelete

Nueva implementación. Las operaciones de datos se controlan en el origen de datos. Para obtener más información, vea Mostrar datos en el control DataGridView de formularios Windows Forms.

AfterUpdate

RowsAdded

BeforeColEdit

CellBeginEdit

BeforeColUpdate

BeforeDelete

BeforeInsert

BeforeUpdate

Nueva implementación. Las operaciones de datos se controlan en el origen de datos. Para obtener más información, vea Mostrar datos en el control DataGridView de formularios Windows Forms.

ButtonClick

Click (control Button)

Change

TextChanged

Nota:
El comportamiento del evento TextChanged es ligeramente diferente. Para obtener más información, vea Evento de cambio de control ComboBox para usuarios de Visual Basic 6.0.

Click

SelectedIndexChanged

ColEdit

CellBeginEdit

ColResize

ColumnWidthChanged

DblClick

CellMouseDoubleClick

DragDrop

DragOver

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

Error

DataError

HeadClick

ColumnHeaderMouseClick

MouseDown

CellMouseDown

MouseMove

CellMouseMove

MouseUp

CellMouseUp

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.

OnAddNew

RowsAdded

RowColChange

CurrentCellChanged

RowResize

RowHeightChanged

SelChange

SelectionChanged

SplitChange

Nueva implementación. No se admite la división de vistas directamente; utilice un control SplitContainer.

Validate

Validating

Notas de la actualización

Cuando un proyecto de Visual Basic 6.0 se actualiza a Visual Basic 2008, el evento Change del control DataGrid se asigna al evento TextChanged del control Visual Basic 2008DataGridView. El comportamiento del evento TextChanged difiere del comportamiento del evento Change; esta diferencia puede provocar resultados inesperados en el código.

No se actualiza ningún código relacionado con métodos o eventos específicos de datos. Se agregan comentarios de advertencia al código y se debe quitar o modificar el código antes de compilar la aplicación.

Vea también

Conceptos

Resumen de tecnologías para el control DataGridView (formularios Windows Forms)

Adiciones a formularios Windows Forms para .NET Framework 2.0

Referencia

Información general del control DataGridView (Formularios Windows Forms)

Comparación de los controles y objetos programables de distintos lenguajes y bibliotecas

Otros recursos

DataGridView (Control, formularios Windows Forms)

Controles de formularios Windows Forms para usuarios de Visual Basic 6.0

Enlace de datos en formularios Windows Forms