Está en la página 1de 12

DataGridView

Trabajar con el control DataGridView es fcil en Visual Basic.NET. Las


caractersticas tiles de este control hacen el desarrollo de software de base de
datos una brisa. Las funciones ya hechas, como las propiedades, mtodos,
funciones y eventos, realizan la mayora de las tareas.

Qu es DataGridView?
Se trata de un control en Visual Basic .NET, que le proporciona una interfaz de
usuario interactiva para mostrar informacin grficamente. La interfaz de usuario
es interactiva, porque el usuario final del software puede interactuar con l si el
desarrollador del software lo permite. El usuario final puede agregar, editar y
eliminar columnas si el desarrollador lo permite. Y tambin, pueden editar el
contenido si se da el permiso. El control DataGridView se parece a la hoja de
clculo de Excel, que se puede agregar al formulario para que el usuario final
pueda utilizarlo con fines especficos.
El control DataGridView se compone bsicamente de filas y columnas. Adems,
cada columna tiene su encabezado, donde se puede cambiar el texto del
encabezado. El texto del encabezado se puede cambiar en el diseador.
Tambin se puede cambiar mediante programacin. Las barras de
desplazamiento verticales y horizontales aparecen automticamente cada vez
que se necesitan. Las barras de desplazamiento se utilizan para desplazarse por
las pginas para ver ms contenido. Por tanto, un control DataGridView puede
contener informacin de varias pginas.

Mostrar datos de la base de datos en DataGridView


Aunque puede agregar datos manualmente, el control DataGridView se utiliza
generalmente para mostrar datos de la base de datos. Por ejemplo, si tiene una
base de datos de Access conectada al proyecto de Visual Basic, puede mostrar
datos de l. Los datos de la base de datos se mostrarn en filas y columnas del
control DataGridView. Adems de las bases de datos de Access, tambin puede
mostrar datos en el control DataGridView desde otros sistemas de administracin
de bases de datos como Oracle, MS SQL Server, MySQL, dBASE, etc.

Elegir origen de datos para el control DataGridView


Despus de agregar el control DataGridView en el formulario, lo primero que
debe hacer es elegir el origen de datos, ya sea desde el diseador o en el cdigo,
para que los datos se muestran automticamente desde la base de datos.
Seleccin del origen de datos del diseador: La siguiente captura de pantalla
muestra cmo elegir el origen de datos del diseador.
Seleccin del origen de datos en el cdigo: El cdigo siguiente muestra cmo
agregar un origen de datos.

Cdigo:
Private Sub FormMailBook_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
DataGridView1.DataSource = db.data("select * from tablemailbook", "tablemailbook")
End Sub

El cdigo se escribe dentro del procedimiento de evento de carga. Por lo tanto,


el origen de datos se selecciona cuando se carga el formulario. Aqu, data () es
una funcin definida por el usuario y tablemailbook es el nombre de la tabla de
la base de datos.
La ventaja de cargar datos de una base de datos existente es que no es
necesario poner manualmente el contenido en el control DataGridView. Todos
los datos se cargan automticamente en fila y columna. As que esta lnea de
cdigo puede ahorrar mucho tiempo y esfuerzo de desarrollo.

Diseo del control DataGridView

Puede disear el control DataGridView segn sus necesidades. Por ejemplo,


puede cambiar el color de fondo. Es posible que desee cambiar las fuentes,
tamaos, etc., o puede personalizar las filas y las columnas para que el control
DataGridView satisfaga sus necesidades. Hay varias propiedades tiles que se
pueden utilizar para disear el control DataGridView. Puede cambiar las
propiedades del diseador, o incluso puede establecer propiedades en el cdigo
cuando sea necesario hacerlo. Como este control es muy personalizable, debe
personalizarlo para cumplir con todos sus requisitos relacionados con el diseo.
PROPIEDADES IMPORTANTES

El control DataGridView tiene muchas propiedades tiles. Las propiedades,


cuando se usan correctamente, pueden ahorrar tiempo y esfuerzo de desarrollo
significativamente. Las propiedades hacen que trabajar con el control
DataGridView sea casi sin esfuerzo.
Puede configurar las propiedades en tiempo de diseo o en el cdigo. De
acuerdo con sus necesidades especficas, elija si algunas propiedades deben
establecerse en el cdigo o si algunas de ellas tienen que establecerse utilizando
el diseador. Hay algunas propiedades de tiempo de ejecucin que no se pueden
establecer con el diseador. Hay algunas propiedades ReadOnly. Las
propiedades ReadOnly se utilizan slo para obtener valores, no para establecer.
Hay varias propiedades del control DatagridView. Esta seccin enumera slo las
propiedades ms importantes que se utilizan con frecuencia cuando se trabaja
con el control DatagridView.

Obtencin de filas: La propiedad Rows


'Rows' es una propiedad de slo lectura, que se utiliza para obtener una
coleccin de todas las filas.

Obtencin de columnas: la propiedad Columns


'Columns' es una propiedad de slo lectura, que se utiliza para obtener una
coleccin de todas las columnas.

Seleccin de filas: la propiedad Selected


La propiedad Selected se utiliza en combinacin con la propiedad 'Rows' para
seleccionar una fila o para saber si la fila est seleccionada o no. Esto da valores
booleanos.

Cdigo:
For i = 0 To DataGridView1.Rows.Count - 1
DataGridView1.Rows(i).Selected = True
Next

DatagridView1.Rows.Count devuelve el nmero de filas. Por lo que este cdigo


selecciona todas las filas en el control DataGridView.
Contando filas / columnas: la propiedad Count
La propiedad 'Count' se utiliza en combinacin con las propiedades 'Rows' y
'Columns'. Da el nmero de filas o columnas.

Cdigo:
Label1.Text = DataGridView1.Rows.Count

La propiedad 'Count' cuenta el nmero de filas y asigna el valor a la propiedad


Text del control Label1, de modo que el valor se muestre en el control Label.

Obtencin de filas seleccionadas: la propiedad SelectedRows


SelectedRows es una propiedad de slo lectura que se utiliza para obtener las
filas seleccionadas por el usuario.

Cdigo:
For i = 0 To DataGridView1.SelectedRows.Count - 1
db.data("delete from tablemailbook where mail='" &
DataGridView1.SelectedRows.Item(i).Cells(1).Value & "'", "Tablemailbook")
Next i

Este cdigo elimina valores de las filas seleccionadas por el usuario. Si el usuario
selecciona 5 filas, todos los valores de 5 filas se borrarn en este caso. El cdigo
anterior utiliza la consulta SQL para eliminar valores de la base de datos.
'Tablemailbook' es el nombre de la tabla en la base de datos. Data () es una
funcin definida por el usuario.

SelectedColumns
SelectedColumns es una propiedad de slo lectura que se utiliza para obtener
las columnas seleccionadas por el usuario.

SelectedCells
SelectedCells es una propiedad de slo lectura que se utiliza para obtener las
celdas seleccionadas por el usuario.

Cambiar el texto del encabezado: la propiedad HeaderText


Puede cambiar fcilmente el texto del encabezado utilizando la propiedad
HeaderText.

Cdigo:
DataGridView1.Columns.Item(1).HeaderText = "Email Address"
Este cdigo cambia el texto del encabezado de la segunda columna a " Email
Address". El ndice empieza a partir de 0, por lo que el elemento (1) es el segundo
elemento de la coleccin de columnas. Puede cambiar los textos de encabezado
de todas las columnas mediante un bucle.

Obtencin o establecimiento de valores de celda: la propiedad Value


Puede obtener o establecer el valor de una celda en particular. Considere el
siguiente cdigo para entenderlo.

Cdigo:
TextBoxName.Text = DataGridView1.SelectedRows.Item(0).Cells(0).Value

Este cdigo asigna el valor de una celda a la propiedad Text del control TextBox.

Cambio del color de fondo: la propiedad BackgroundColor


Puede cambiar el color de fondo del control DataGridView mediante la propiedad
BackgroundColor.

Cdigo:
DataGridView1.BackgroundColor = Color.Aqua

Este cdigo establece el color de fondo del control DataGridView. Por lo general,
no es necesario establecer el color de fondo en el cdigo, ya que esto se puede
hacer con el diseador. En algunos casos, puede que tenga que escribir el
cdigo, sin embargo.

Nmero de columnas: la propiedad ColumnCount


La propiedad ColumnCount se utiliza para obtener o establecer el nmero de
columnas en el control DataGridView.

Fila en un ndice especificado: la propiedad Item


Item es una propiedad de slo lectura que se utiliza para obtener un elemento
como una fila en un ndice especificado. El valor de ndice 0 indica el primer
elemento.

Cdigo:
TextBoxName.Text = DataGridView1.SelectedRows.Item(6).Cells(0).Value

En este cdigo, Item (6) se refiere a la sptima fila entre las filas seleccionadas.
Mltiples selecciones: la propiedad MultiSelect
MultiSelect es una propiedad booleana, que se utiliza para obtener o establecer
un valor que indica si el usuario puede seleccionar ms de una celda, columna
o fila.

Cdigo:
DataGridView1.MultiSelect = True

Este cdigo establece la propiedad MultiSelect en True. As, el usuario podr


realizar selecciones mltiples en celdas, columnas y filas.

La propiedad ReadOnly
La propiedad ReadOnly se utiliza para obtener o establecer un valor que indica
si el usuario del programa puede modificar las celdas del control.

Cdigo:
DataGridView1.ReadOnly = True

Este cdigo hace que el control DatagridView sea de slo lectura. Esto significa
que el usuario del programa no puede realizar cambios en el control
DataGridView.

MTODOS IMPORTANTES

Hay varios mtodos expuestos por el control DataGridView. Aqu, slo se


discuten los mtodos ms importantes, que son utilizados con frecuencia por los
programadores. Los mtodos realizan algunas operaciones en los objetos. Por
lo tanto, utilice los mtodos expuestos por el control DataGridView cuando desea
que el control DataGridView, las filas o las columnas realicen algunas acciones.

Seleccin de celdas: el mtodo SelectAll


Utilice el mtodo SelectAll para seleccionar todas las celdas en el control
DataGridView.

Cdigo:
DataGridView1.Rows.SelectAll ()

Adicin de filas / columnas: el mtodo Add


El mtodo Add se utiliza en combinacin con las propiedades Filas o Columnas
para agregar filas y columnas. Considere el siguiente ejemplo.
Cdigo:
DataGridView1.Rows.Add ("Car", "bike", "train", "taxi")

GetFirstRow
El mtodo GetFirstRow devuelve el ndice de la primera fila. Este mtodo se
utiliza en combinacin con la propiedad Rows.

GetLastRow
El mtodo GetLastRow devuelve el ndice de la ltima fila. Este mtodo se utiliza
en combinacin con la propiedad Rows.

GetNextRow
El mtodo GetNextRow devuelve el ndice de la siguiente fila. Este mtodo se
utiliza en combinacin con la propiedad Rows.

GetPreviousRow
El mtodo GetPreviousRow devuelve el ndice de la fila anterior. Este mtodo se
utiliza en combinacin con la propiedad Rows.

GetRowCount
El mtodo GetRowCount devuelve el nmero de filas. Este mtodo se utiliza en
combinacin con la propiedad Rows.

EVENTOS IMPORTANTES

El control DatagridView genera muchos eventos de acuerdo con las acciones


especficas realizadas por el usuario. Esta seccin cubre slo algunos de ellos.

CellMouseClick
El evento CellMouseClick se activa cuando el usuario hace clic en la celda.

CellMouseDoubleClick
El evento CellMouseDoubleClick se activa cuando el usuario hace doble clic en
la celda.
Cdigo:
Private Sub DataGridView1_CellMouseDoubleClick(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles
DataGridView1.CellMouseDoubleClick
If e.RowIndex <> -1 Then
ButtonEdit.PerformClick()
End If
End Sub

El cdigo dentro del procedimiento de evento CellMouseDoubleClick se ejecuta


cuando el usuario hace doble clic en la celda.

KeyDown
El evento KeyDown se activa cuando el usuario presiona una tecla desde el
teclado.

Cdigo:
Private Sub DataGridView1_KeyDown(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyEventArgs) Handles DataGridView1.KeyDown
If e.KeyCode = Keys.Delete Then
ButtonDelete.PerformClick()
End If
End Sub

El manejador de eventos KeyDown se ejecuta cuando el usuario presiona una


tecla. El control DataGridView debe estar en foco para que se desencadene el
evento para el control DataGridView.

KeyPress
El controlador de eventos KeyPress se ejecuta cuando el usuario libera una tecla
del teclado.

MouseClick
El evento MouseClick se activa cuando el usuario hace clic en el control
DataGridView con un mouse.

CellClick
El controlador de eventos CellClick se invoca cuando el usuario hace clic en
cualquier parte de la celda.
CellContentClick
El controlador de eventos CellContentClick se invoca cuando el usuario hace clic
en el contenido de la celda.

CellContentDoubleClick
El controlador de eventos CellContentDoubleClick se invoca cuando el usuario
hace doble clic en el contenido de la celda.

CellDoubleClick
El evento CellDoubleClick se activa cuando el usuario hace doble clic en la celda.

CellMouseClick
El evento CellMouseClick se activa cuando el usuario hace clic en la celda con
un mouse.

Cdigo:
Private Sub DataGridView1_CellMouseClick(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles
DataGridView1.CellMouseClick
If e.Button = Windows.Forms.MouseButtons.Right And e.RowIndex <> -1 Then
ContextMenuStrip1.Show(MousePosition)
End If
For i = 0 To DataGridView1.Rows.Count - 1
DataGridView1.Rows(i).Selected = False
Next
If e.RowIndex <> -1 Then
DataGridView1.Rows(e.RowIndex).Selected = True
End If
End Sub

El cdigo dentro del procedimiento de evento CellMouseClick se ejecuta cuando


se hace clic en la celda con un mouse.

Click
El evento Click se produce cuando el usuario hace clic en DataGridViewControl.
APLICACIN

La empresa Ad-Hoc Ingenieros E.I.R.L., desea tener un registro de todos sus


empleados (Cdigo, Nombres, Apellidos, DNI, Telfono, Sexo y Direccin).
Asimismo requiere que la aplicacin le permita gestionar dichos registros:
Agregar, actualizar y eliminar.

PANTALLA PRINCIPAL

AGREGAR EMPLEADO
EMPLEADOS REGISTRADOS

ACTUALIZAR EMPLEADO
ELIMINAR EMPLEADO

REGISTROS DE EMPLEADOS