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.
Navegación
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 |
|
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 |
|
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 |
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 |
|
ColumnHeaders |
|
Container |
Parent; se hereda de Control. |
CurrentCellModified |
|
CurrentCellVisible |
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 |
|
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 |
|
FirstRow |
|
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
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 |
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 |
|
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 |
|
MarqueeStyle |
No hay equivalente directo. Utilice las propiedades SelectionMode, CellBorderStyle y Format. |
RecordSelectors |
|
Row |
|
RowDividerStyle |
Propiedades GridColor, CellBorderStyle, RowHeadersBorderStyle, ColumnHeadersBorderStyle. |
RowHeight |
|
SelBookmarks |
Nueva implementación. Ahora se puede obtener acceso directamente a cualquier elemento. |
SelEndCol SelStartCol |
|
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 |
|
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 |
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 |
|
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 |
|
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 |
|
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 |
|
BeforeColEdit |
|
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 |
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 |
|
ColEdit |
|
ColResize |
|
DblClick |
|
DragDrop DragOver |
Nueva implementación. Para obtener más información, vea Arrastrar y colocar para usuarios de Visual Basic 6.0. |
Error |
|
HeadClick |
|
MouseDown |
|
MouseMove |
|
MouseUp |
|
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 |
|
RowColChange |
|
RowResize |
|
SelChange |
|
SplitChange |
Nueva implementación. No se admite la división de vistas directamente; utilice un control SplitContainer. |
Validate |
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