samesdavis Posted April 23, 2013 at 10:54 PM Report #504592 Posted April 23, 2013 at 10:54 PM Pessoal, Tenho um form que mostra a listagem de funcionários através de uma dbgridview, ao clicar duas vezes em qualquer linha da dbgridview, é aberto um form com NEW porque repasso parametros como esse Public Property pID_ITEM_VND As Long Nesse form que é aberto como New, existe uma tabcontrol (guias) e uma delas tem uma dbgridview e faz o mesmo processo, quando clico duas vezes sobre essa linha da dbgridview desse form que é aberto com new, ele abre um outro form, também com new onde edito os dados. Ao salvar os dados e fechar o form que foi aberto com new, desejo recarregar a grid já com os dados atualizados, isso não é apenas para edição, também faço inclusão e exclusão. Mas o que preciso mesmo saber, é como faço para recarregar os dados de uma dbgridview de um form que foi aberto com New. Eu tentei fazer assim: Frm_FuncionariosCad.PreencheGrid Mas não funciona, só funciona se eu fechar o form e abrir de novo. Alguém sabe como ajudar ?
Nelson Sousa Posted April 23, 2013 at 11:05 PM Report #504594 Posted April 23, 2013 at 11:05 PM Fala moço, Quando abrir os formulários abra-os com .ShowDialog Na próxima linha faça a recarga do grid. Quando um form é aberto com showdialog o código fica aguardando até o fechamento do mesmo para continuar a execução. Um Abraço, Nelson Sousa
samesdavis Posted April 23, 2013 at 11:15 PM Author Report #504596 Posted April 23, 2013 at 11:15 PM Mas esses forms que abro, tem esse código no LOAD MdiParent = Frm_MenuPrincipal Isso é para que o form fique dentro da MDI. Se eu abrir com o .ShowDialog, irá dar erro. Isso eu já havia tentado.
Nelson Sousa Posted April 23, 2013 at 11:18 PM Report #504598 Posted April 23, 2013 at 11:18 PM Pois então, Pra evitar isso você deve informar para o form o modo como deseja que ele trabalhe. Eu faço isso passando na TAG do form a palavra "Diálogo", e no evento load do form eu verifico: If Not Me.Tag = "Dialogo" Then MdiParent = Frm_Principal Me.TopMost = False Else Me.TopMost = True End If Um Abraço, Nelson Sousa
samesdavis Posted April 24, 2013 at 10:35 AM Author Report #504639 Posted April 24, 2013 at 10:35 AM Não deu certo, acho que dá forma como você usa deve funcionar, porque você não usa Property e New para passar parâmetros. Deve ter uma outra forma de se fazer essa atualização da forma que trabalho.
Nelson Sousa Posted April 24, 2013 at 05:42 PM Report #504711 Posted April 24, 2013 at 05:42 PM Retornou algum erro? Um Abraço, Nelson Sousa
samesdavis Posted April 24, 2013 at 08:15 PM Author Report #504724 Posted April 24, 2013 at 08:15 PM Apenas não atualizou e pior, como foi aberta como showdialog, qaundo minimizo as janelas, ela fica fora da MDI usei o topmost como vc sugeriu e não deu certo.Tenho de achar um plano B.
Nelson Sousa Posted April 24, 2013 at 10:07 PM Report #504729 Posted April 24, 2013 at 10:07 PM O TopMost é justamente para o form não sair da tela até ser fechado. Posta o código completo pra gente ver. Um Abraço, Nelson Sousa
acao Posted April 24, 2013 at 10:13 PM Report #504731 Posted April 24, 2013 at 10:13 PM boas você já passou por aqui, veja se serve. http://www.portugal-a-programar.pt/topic/59893-duvidas-com-forms-mdi-filho/ cumps acao
samesdavis Posted April 26, 2013 at 12:23 AM Author Report #504868 Posted April 26, 2013 at 12:23 AM (edited) Na verdade, o título do meu tópico deveria ser: ATUALIZAR FORM INSTANCIADO Consegui resolver: Private Sub Frm_FornecedoresCad_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing For Each frm As Form In Frm_MenuPrincipal.MdiChildren If frm.GetType.Name = "Frm_ProdutosCad" Then Dim f As Frm_ProdutosCad = frm f.PreencheGrid() End If Next End Sub Edited April 26, 2013 at 12:30 AM by samesdavis
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now