DataGridView sin conexion a datos – Dimensionar filas y columnas

Este ejemplo nos muestra como crear un conjunto de filas y columnas en un DataGridView sin estar enlazado a ninguna fuente de datos, puede ser util en situaciones donde nos interesa representar datos en una cuadricula de visualizacion. Para evitar que el usuario pueda añadir filas, hemos puesto su propiedad ‘AllowUserToAddRows’ a ‘Falso’ y para evitar la edicion de las celdas ‘enabled’ en ‘Falso’. Os podeis entretener un poquito y si os interesa podeis ocultar la fila y columna que hace de cabezera o si preferimos podemos ponerles titulos, tambien personalizar el ancho / alto, el color … en fin.

 

 

Public Class Form1

    Private _MiDGV As New DataGridView      'Nuestro DataGrid

 

    '

    'Construir el aspecto de nuestro DataGrid

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        _MiDGV.Dock = DockStyle.Fill            'Acoplar al form

        _MiDGV.Enabled = False                  'Impedir la edicion

        _MiDGV.AllowUserToAddRows = False       'Sin opcion añadir filas

        'Dimensionar el ancho automaticamente

        _MiDGV.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill

        Me.Controls.Add(_MiDGV)                 'Añadir el Grid al form

        Me.OrdenN(3, 3)                         'Empezar con un orden 3*3

    End Sub

 

    '

    'Al pulsar las teclas 1/2/3/4/5

    Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp

        Select Case e.KeyValue              'Al pulsar .. 1/2/3/4/5

            Case 49 : OrdenN(1, 1)          'Crear un cubo de 1*1

            Case 50 : OrdenN(2, 2)          '2*2

            Case 51 : OrdenN(3, 3)          '3*3

            Case 52 : OrdenN(4, 4)          '4*4

            Case 53 : OrdenN(5, 5)          '5*5

        End Select

    End Sub

    '

    'Crear un Grid de dimension f(ilas) c(columnas)

    Private Sub OrdenN(ByVal f As Integer, ByVal c As Integer)

        Me._MiDGV.Rows.Clear()          'Eliminar todas las filas

        _MiDGV.ColumnCount = c          'Dimensionar el numero de columnas

        Me._MiDGV.Rows.Add(f)           'Dimensionar el numero de filas

 

        Dim Numerar As Integer = 0      'Numerar el contenido de las celdas

        For Each row As DataGridViewRow In Me._MiDGV.Rows

            For Each col As DataGridViewColumn In Me._MiDGV.Columns

                Numerar += 1

                row.Cells(col.Index).Value = Numerar.ToString

            Next

        Next

    End Sub

End Class

3 Replies to “DataGridView sin conexion a datos – Dimensionar filas y columnas”

  1. el ejemplo es muy interesante, pero tengo una pregunta como puedo insertar un fila en medio de la grilla, cuando ya tengo datos….

Leave a Reply to woolf Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.