none
Como actualizar un datagridview que he creado por codigo. RRS feed

  • Pregunta

  • Buenas tardes a todos.

    Tengo el sigiente problema:

    Tengo un programa echo en vb.net 2010 en el que hay una agenda,para ello utilizo un Datagridview,lo que pasa que a veces tengo que crear varias agendas,para ello lo que hago es crear por codigo los Datagridview dentro del evento click de un boton,dejo codigo:

     For i As Integer = 0 To UBound(arrPrestaciones)
                        'sItem2 = cls_medicos.CheckedItems(i)
                        'If Len(Trim(sItemList2)) > 0 Then
                        '    sItemList2 &= "," & sItem2
                        'Else
                        '    sItemList2 = sItem2
                        'End If

                        Dim sql As String = "Select us_idUsuario from td_usuario where us_ag_alias='" & arrPrestaciones(i) & "'"
                        Dim dt As DataTable = SQLServerOftalmogestion.SelectSQL(sql)
                        If dt.Rows.Count > 0 Then

                            Dim id_usu As String = If(IsDBNull(dt.Rows(0)(0)), "", dt.Rows(0)(0))

                            'Dim dgv As New DataGridView
                            Dim lbl As New Label

                            'dgv.ContextMenuStrip = frm_agenda.ContextMenuStrip1


                            AddHandler dgv.CellClick, AddressOf frm_agenda.grd_parrillaAgenda_CellClick
                            AddHandler dgv.CellContentClick, AddressOf frm_agenda.grd_parrillaAgenda_CellContentClick
                            AddHandler dgv.CellEndEdit, AddressOf frm_agenda.grd_parrillaAgenda_CellEndEdit
                            AddHandler dgv.CellMouseLeave, AddressOf frm_agenda.grd_parrillaAgenda_CellMouseLeave
                            AddHandler dgv.CellMouseMove, AddressOf frm_agenda.grd_parrillaAgenda_CellMouseMove
                            AddHandler dgv.Click, AddressOf frm_agenda.grd_parrillaAgenda_Click
                            AddHandler dgv.DoubleClick, AddressOf frm_agenda.grd_parrillaAgenda_DoubleClick
                            AddHandler dgv.DragDrop, AddressOf frm_agenda.grd_parrillaAgenda_DragDrop
                            AddHandler dgv.DragEnter, AddressOf frm_agenda.grd_parrillaAgenda_DragEnter
                            AddHandler dgv.GotFocus, AddressOf frm_agenda.grd_parrillaAgenda_GotFocus
                            AddHandler dgv.KeyDown, AddressOf frm_agenda.grd_parrillaAgenda_KeyDown
                            AddHandler dgv.KeyPress, AddressOf frm_agenda.grd_parrillaAgenda_KeyPress
                            AddHandler dgv.MouseClick, AddressOf frm_agenda.grd_parrillaAgenda_MouseClick
                            AddHandler dgv.MouseDown, AddressOf frm_agenda.grd_parrillaAgenda_MouseDown
                            AddHandler dgv.MouseEnter, AddressOf frm_agenda.grd_parrillaAgenda_MouseEnter
                            AddHandler dgv.MouseHover, AddressOf frm_agenda.grd_parrillaAgenda_MouseHover
                            AddHandler dgv.MouseLeave, AddressOf frm_agenda.grd_parrillaAgenda_MouseLeave
                            AddHandler dgv.MouseMove, AddressOf frm_agenda.grd_parrillaAgenda_MouseMove
                            AddHandler dgv.MouseUp, AddressOf frm_agenda.grd_parrillaAgenda_MouseUp
                            AddHandler dgv.SelectionChanged, AddressOf frm_agenda.grd_parrillaAgenda_SelectionChanged


                            dgv.RowsDefaultCellStyle.Font = frm_agenda.grd_parrillaAgenda.RowsDefaultCellStyle.Font
                            dgv.RowHeadersBorderStyle = frm_agenda.grd_parrillaAgenda.RowHeadersBorderStyle
                            dgv.ColumnHeadersDefaultCellStyle.Font = frm_agenda.grd_parrillaAgenda.ColumnHeadersDefaultCellStyle.Font
                            dgv.ColumnHeadersBorderStyle = frm_agenda.grd_parrillaAgenda.ColumnHeadersBorderStyle
                            dgv.ColumnHeadersHeightSizeMode = frm_agenda.grd_parrillaAgenda.ColumnHeadersHeightSizeMode
                            dgv.EnableHeadersVisualStyles = frm_agenda.grd_parrillaAgenda.EnableHeadersVisualStyles
                            dgv.BackgroundColor = frm_agenda.grd_parrillaAgenda.BackgroundColor
                            dgv.AllowUserToResizeRows = False
                            dgv.CellBorderStyle = DataGridViewCellBorderStyle.SingleHorizontal
                            'dgv.Anchor = AnchorStyles.Right Or AnchorStyles.Left

                            dgv.AllowUserToAddRows = False
                            dgv.AllowUserToDeleteRows = False
                            dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect
                            dgv.ReadOnly = True
                            dgv.MultiSelect = False
                            dgv.Size = frm_agenda.grd_parrillaAgenda.Size
                            dgv.Font = frm_agenda.grd_parrillaAgenda.Font
                            dgv.RowHeadersVisible = False
                            'dgv = grd_parrillaAgenda
                            dgv.Width = ancho
                            dgv.Height = frm_agenda.grd_parrillaAgenda.Height
                            dgv.Location = New Point(x1, y1)
                            dgv.Tag = id_usu

                            lbl.Text = arrPrestaciones(i)
                            lbl.Location = New Point(x1, y1 - 30)

                            lbl.AutoSize = True
                            lbl.BackColor = Color.Black
                            lbl.ForeColor = Color.White
                            lbl.Font = New Font("Microsoft Sans Serif", 12, FontStyle.Bold)



                            frm_agenda.Panel1.Controls.Add(dgv)
                            frm_agenda.Panel1.Controls.Add(lbl)

                            Call fill_gridTimeTable(Format(CType(Now, Date), "yyyy-MM-dd"), dgv, frm_agenda.visorFechaAct, id_usu, IIf(frm_agenda.tab_Usuarios.SelectedTab.Text = "TODOS", 0, 1), sEstadoFiltroAgenda)
                            x1 = x1 + dgv.Width + 1

                        End If
                    Next

    La cuestion esque cuando se me muestran los datagridview y quiero solamente actualizar uno de ellos,no se como hacerlo,porque no se identificarlos cuando estan creados los objetos por código.

    Si alguien pudiera echarme una mano.

    Muchas gracias



    • Editado Juan Martinez F martes, 17 de noviembre de 2015 15:48
    • Cambiado Enrique M. Montejo jueves, 19 de noviembre de 2015 8:26 Pregunta relacionada con controles de Windows Forms.
    martes, 17 de noviembre de 2015 15:45