Jump to content
fantasticleague

Fazer refresh á DataGridView

Recommended Posts

fantasticleague

Boas

Eu tenho uma data grid view em que ao fazer double click carrega os valores para um form novo, e tenho lá um botão que vai fazer update á bd, muda o campo equipa, para a equipa do user que estiver logado, e depois quero que quando vá ao plantel(ta filtrado, mostra só os jogadores da equipa do user que esta logado) e eu quero que ao ir lá o jogador que "comprei" já lá esteja sem ter que fechar e iniciar a aplicação.

Está a funcionar mas só actualiza quando saio e entro da aplicação.

alguem me ajude

já tentei o DataGridView.Refresh

mas n funciona

cumps

Share this post


Link to post
Share on other sites
bioshock

Só tens de chamar novamente o código que tu utilizas inicialmente para carregar a DataGridView.

Share this post


Link to post
Share on other sites
fantasticleague

chamo o código onde?

o código que uso é este:

JogadoresBindingSource.Filter = "Equipa = '" & login.user & "'"

cumps

Share this post


Link to post
Share on other sites
bioshock

Agora que li melhor o teu problema, tu estás a utilizar dois forms?

Se sim, como é que tu carregas os dados para a datagridview pela 1ª vez?

Share this post


Link to post
Share on other sites
fantasticleague

estou a usar 2 forms sim

no 1º form carrego a data grid view normalmente, com os dados todos, depois carrego numa linha e isso carrega os valores desse jogador para outro form, depois tem lá um botão que serve para comprar o jogador, que vai fazer update ao campo Equipa, metendo-o com o nome da equipa.

o que eu quero é actualizar essa grid view e depois a grid view do plantel desse utilizador que chamo a gid view com um filtro

JogadoresBindingSource.Filter = "Equipa = '" & login.user & "'"

também quero que esta grid view faça update.

Form Escolher jogadores: form da 1ª grid view que tem os jogadores todos

Form frmjogador: form onde está o botao

Form Plantel: form onde esta a 2ª grid view com o filtro.

Eu quero actualizar as duas grid view

cumps

Share this post


Link to post
Share on other sites
bioshock

Por acaso abres os Forms com a função ShowDialog() em vez de Show()?

Se sim, podes simplesmente fazer isto:

Form1.cs

Form2.ShowDialog()
MetodoActualizarDGView()

Desta forma, assim que fechares o Form2, ele actualiza o Form1 (que neste caso, apenas actualiza os dados da tua DataGridView).

Também podes utilizar um outro método de actualização, que podes encontrar aqui: http://stackoverflow.com/questions/13397507/updating-datagridview-from-another-form-in-vb-net, no 2º post.

Share this post


Link to post
Share on other sites
fantasticleague

eu abro os forms com

.show

esse codigo ja n funciona?

e qual a diferença entre .show e .showdialog

e não estou a perceber muito bem a segunda linha de codigo :S

Edited by fantasticleague

Share this post


Link to post
Share on other sites
bioshock

A diferença é que, quando abres com um form com .ShowDialog(), não podes, enquanto não o fechares, mudar para outro form.

Já no outro post te pedi, mas volto a pedir: mostra a forma como estás a carregar os dados para a DataGridView.

Edit: Afinal, já devo saber como estás a fazer. Tu estás a utilizar o método do Visual Studio que te permite através de um wizard, utilizar uma base de dados e por sua vez ele fazer o trabalho todo sozinho, correcto?

Estás a utilizar bindingsources?

Edited by bioshock

Share this post


Link to post
Share on other sites
fantasticleague

sim,

a programação que tenho no double click na datagid view é

   Private Sub JogadoresDataGridView_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles JogadoresDataGridView.CellDoubleClick
    With frmJogador
	    .Show()
	    .JogadoresBindingSource.Position = .JogadoresBindingSource.Find("Nome", JogadoresDataGridView.CurrentRow.Cells(0).Value)
    End With
   End Sub

Share this post


Link to post
Share on other sites
fantasticleague

ja exprimentei meter isto no botao que tenho para voltar para o plantel e não da

Actualizar/Carregar dados:

Me.NOMEdaTABELATableAdapter.Fill(Me.NOMEBaseDADOSDataSet.NOMEdaTABELA)

Share this post


Link to post
Share on other sites
bioshock

Pressuponho que tenhas alterado aí algumas coisas no código...certo?

Form2.ShowDialog()
Me.NOMEdaTABELATableAdapter.Fill(Me.NOMEBaseDADOSDataSet.NOMEdaTABELA)

Aprende a usar as tags de código [ code = vbnet ] [ /code ]

Share this post


Link to post
Share on other sites
fantasticleague

tá a dar erro

O formulário que já está visível não pode ser apresentado como uma caixa de diálogo modal. Defina a propriedade visível do formulário como falsa antes de chamar showDialog.

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
 Me.Hide()

 frmplantel.ShowDialog()
 JogadoresTableAdapter.Fill(PapDataSet.Jogadores)
End Sub
End Class

edit:

ja ta +/- a funcionar, ja consigo alterar, mas só 1, depois vou ao plantel, escolho outro jogador e isto escolhe sempre o mesmo jogador, um que nem está no plantel :S

já meti a funcionar ahahahha

que LOL

basta meter

dgv.refresh LOOOOL

Edited by fantasticleague

Share this post


Link to post
Share on other sites
bioshock

Antes de mais, estás a esconder um form..não é muito boa prática. O processo fica-te a correr em background e a puxar-te recursos. Atenção a isso!

Ainda bem que conseguiste, mas para futuros problemas tem atenção à forma como te expressas. É complicado para quem está deste lado perceber o teu ponto de vista e a tua ideia. Boa sorte.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.