Buenas , les dejo como me esta quedando con Windows Form, lo unico que me queda resolver es como se acomodan las ordenes ya que si una tiene mas de 5 items se sobrepone a la de abajo, si tienen alguna idea los leo, miebtras les dejo el codigo de como lo hice.
Dim loDataTable As New DataTable
'Me.WindowState = FormWindowState.Maximized
Dim EspaciadoX1 As Integer = (grbBotones.Size.Width \ 5) + 30 'Con el Form Maximizado, se calcula 10 columnas
Dim Ancho1 As Integer = EspaciadoX1 - 5
Dim EspaciadoY1 As Integer = (grbBotones.Size.Height \ 5) + 60 ''Con el Form Maximizado, se calcula 10 filas
Dim Alto1 As Integer = EspaciadoY1 - 5
Dim TotalColumnas1 As Integer = grbBotones.Size.Width \ EspaciadoX1
Dim PosIni1 As Integer = CInt((grbBotones.Size.Width - (TotalColumnas1 * EspaciadoX1)) / 2)
Dim PosControl1 As New Point(PosIni1, PosIni1)
Dim NumColumna1 As Integer = 0
Dim estado As String = "abierta"
Dim CadenaSQL As String = ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source= C:\comidas\comidas\bin\base\comidas.accdb;Persist Security Info=False")
Dim lsQuery As String = "SELECT * FROM PEDIDOCLIE WHERE estado = '" & estado & "' "
Try
Using loConexion As New OleDb.OleDbConnection(CadenaSQL)
'crear el DataAdapter
Using loDataAdapter As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(lsQuery, loConexion)
'cargar el datatable
loDataAdapter.Fill(loDataTable)
End Using
End Using
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Dim MiColor1 As Drawing.Color = Color.White
Dim MiColor2 As Drawing.Color = Color.White
'recorrer la tabla para cargar los controles en el Form
For Each loFila As DataRow In loDataTable.Rows
'Crear nuevo Button
Dim loButton As New Panel
loButton.Name = "PnlSample"
loButton.Location = New Point(PosControl1.X, PosControl1.Y)
loButton.AutoSize = True
loButton.BorderStyle = BorderStyle.None
loButton.BackColor = Color.LightGray
loButton.Visible = True
Dim PANELTEXTO As New Panel
PANELTEXTO.Location = New Point(1, 1)
PANELTEXTO.Size = New Size(250, 60)
PANELTEXTO.BorderStyle = BorderStyle.None
PANELTEXTO.BackColor = Color.Transparent
PANELTEXTO.Visible = True
'TEXTO NUMERO DE ORDEN
Dim TextoNumeroOrden As New Label
TextoNumeroOrden.Text = "Numero:"
TextoNumeroOrden.Width = 95
TextoNumeroOrden.Location = New Point(1, 1)
TextoNumeroOrden.Font = New Font("Tahoma", 14, FontStyle.Bold)
Dim TextoNumeroOrden1 As New Label
TextoNumeroOrden1.Text = loFila.Item("numero2").ToString()
TextoNumeroOrden1.Location = New Point(95, 1)
TextoNumeroOrden1.Font = New Font("Tahoma", 14, FontStyle.Bold)
TextoNumeroOrden1.ForeColor = Color.Red
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'TEXTO CLIENTE
Dim TextoNumeroCliente As New Label
TextoNumeroCliente.Text = "Cliente:"
TextoNumeroCliente.Width = 55
TextoNumeroCliente.Height = 15
TextoNumeroCliente.Location = New Point(1, 25)
TextoNumeroCliente.Font = New Font("Tahoma", 9, FontStyle.Bold)
Dim TextoNumeroCliente1 As New Label
TextoNumeroCliente1.Text = loFila.Item("nombre").ToString()
TextoNumeroCliente1.Location = New Point(58, 25)
TextoNumeroCliente1.Font = New Font("Tahoma", 9, FontStyle.Bold)
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
'TEXTO CLIENTE
Dim TextoNumeroMINUTOS As New Label
TextoNumeroMINUTOS.Text = "Mnutos:"
TextoNumeroMINUTOS.Location = New Point(1, 40)
TextoNumeroMINUTOS.Font = New Font("Tahoma", 9, FontStyle.Bold)
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
Dim dgv As New DataGridView
dgv.Location = New Point(1, 40)
dgv.BorderStyle = BorderStyle.None
dgv.Visible = True
dgv.BackgroundColor = Color.White
dgv.Width = 250
dgv.Height = 120
Dim numero As String = loFila.Item("numero").ToString()
Dim dataset1 As New DataSet
Dim datatable1 As New DataTable
Dim sql1 As String = "SELECT ARTICULO, CANTIDAD FROM PEDIDOART WHERE NUMERO = '" & numero & "' "
Dim adp1 As New OleDb.OleDbDataAdapter(sql1, conexion)
dataset1.Tables.Add("TABLAS")
adp1.Fill(dataset1.Tables("TABLAS"))
dgv.DataSource = dataset1.Tables("TABLAS")
dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill
dgv.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
dgv.AllowUserToAddRows = False
dgv.AllowUserToDeleteRows = False
dgv.CellBorderStyle = DataGridViewCellBorderStyle.None
dgv.DefaultCellStyle.Font = New Font("Microsoft Sans Serif", 12, FontStyle.Bold)
dgv.RowTemplate.Height = 30
dgv.DefaultCellStyle.SelectionBackColor = dgv.DefaultCellStyle.BackColor
dgv.DefaultCellStyle.SelectionForeColor = dgv.DefaultCellStyle.ForeColor
dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect
dgv.RowHeadersVisible = False
'Añadir el control a la coleccion de controles del Form
grbBotones.Controls.Add(loButton)
loButton.Controls.Add(PANELTEXTO)
loButton.Controls.Add(dgv)
PANELTEXTO.Controls.Add(TextoNumeroOrden)
PANELTEXTO.Controls.Add(TextoNumeroOrden1)
PANELTEXTO.Controls.Add(TextoNumeroCliente)
PANELTEXTO.Controls.Add(TextoNumeroCliente1)
PANELTEXTO.Controls.Add(TextoNumeroMINUTOS)
PosControl1.X += EspaciadoX1
NumColumna1 += 1
If NumColumna1 = TotalColumnas1 Then
NumColumna1 = 0
PosControl1.X = PosIni1
PosControl1.Y += EspaciadoY1
End If
dgv.Columns("ARTICULO").Width = 220
dgv.Columns("CANTIDAD").Width = 30
Dim CUENTA As String = CStr(dgv.Rows.Count)
If CDbl(CUENTA) = 10 Then 'Falta agregar todas las cantidades solo probe 10
dgv.Height = 330
End If
Next