• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

rui_fernandes

[vb.net 2005] dar valores a uma datagridview de outro form

12 mensagens neste tópico

Boas...

epah.ja vos questonei sobre isto anteriormente, e axo que a duvida ainda n foi tirada...

tipo, tenh o FORM1 com uma datagridview, e apartir deste, abro o FORM2 com o (.SHOWDIALOG() ).

ate aqui td bem.

mas o k eu keria, era atraves do FORM2, adicionar um registo a datagridview do FORM1. adicionar registos eu sei, e consigo se for no FORM1 a adicionar, agr do FORM2 para o FORM1 nao consigo.

epah, tou a da ro exemplo da datagridview k é a minha duvida neste momento..mas pode ser para qualker componente.

epah, sugestoes ? alg ja se deparou c isto?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

usas a mesma função que dizes que funciona na Form1 mas metes "Form1." atrás do nome da datagrid na função da Form 2

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ja tinha feito isso tambem, e nao da na mesma.  :wallbash:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ja experimentaste como disse o Pauzinhos e não deu? Deu algum erro?

Em situações dessas pomos o nome da Form antes do componente para indicar que aquele componente está naquela form. Isto funciona para controls, variaveis, funçoes etc...

Se deu algum erro diz que erro foi, e se puderes posta ai o codigo que tens na form2.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

epah, fiz um pequeno programa a parte e funcionou, mas no k tou a desenvolver n funciona. c o mesmo codigo.


        Dim x As Integer = Datagridview1.CurrentCell.RowIndex

        Dim id As Integer = 0
        Dim QTD As Integer =5
        Dim codartigo As Integer =0
        Dim artigo As String ="wsewe"
        Dim subvalor As Integer = 2 
        Dim iva As Integer = 2 
        Dim desconto As Integer = 2
        Dim valor As Integer =21

        Dim novo() As String = {id, QTD, codartigo, artigo, subvalor, iva, desconto, valor} '

       FRM1.Datagridview1.Rows.Add(novo)

epah,e com este codigo n consigo.

mas no pequeno programa k fiz para testar, deu...  :P

ja o metodo do FORM, (.activated) nao me funciona....

n sei k fazer...

e k nem erros da seker.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hmm...

ai no codigo ("FRM1.Datagridview1.Rows.Add(novo)") tens FRM1 em vez de FORM1. Ou a tua form chama-se mesmo FRM1?

O codigo dessa 2ª form é muito grande? nao da pa postares tudo?

Outra coisa...tu consegues fazer o debug?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

epah, consigo, sem dar erros nenhuns...

o codigo e so esse...ta no evento click de um botao.

epah, é FORM1, eu e k tive a alterar o nome dos formes para se perceber.porque tinha outros nomes.

mas este codigo funciona noutro programa k fiz a parte.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas ja conseguiste resolver com o outro programa?

Se quiseres posso dar uma olhadela ao codigo pa ver se descubro o que se passa...é que nao tou a ver o que possa ser, mas as vezes as coisas mais complicadas sao as mais simples de resolver.

Se quiseres que eu de uma olhadela adiciona-me ao msn e envia o codigo, ou mete ai o link para download...como quiseres.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas...

andei a pesquisar, e xeguei a uma conclusao...e funciona 5*.

tipo, 1º crio uma class, e defino uma variavel como object.

EX:

Public Shared grid As DataGridView

2º no evento LOAD do FORM1, atribuo a variavel da class a DATAGRIDVIEW que vou utilizar.

EX:

  class1.grid = Me.DataGridView1

Depois quando quiser adicionar registos a datagridview do FORM1,chamo a variavel da class, e adiciono-lhe o registo.

EX:

 class1.grid.Rows.Add(novoregisto) 

e é isto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

é uma hipótese :P

por isso é que queria ver o codigo, porque as vezes pasta mudar um 'private' para 'public' para funcionar :D

mas ainda bem que conseguiste, parabens.

fica bem

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora