Jump to content
Sign in to follow this  
will_jdc

Carregar Data Grid por uma função outra Classe

Recommended Posts

Bom Dia Pessoal, estou com uma duvida e creio que bem simples porém não estou conseguindo resolver.
estou começando a programar em C# e preciso carregar um Data Grid porém a função com a consulta no SQL Server esta em outra classe, Vejam abaixo meu codigo:

Abaixo a Função para Cadastrar uma Conta Corrente no Banco de dados:

public static void IncluirConta(String Conta, String ContaDig, String CodigoBanco, String Agencia, String NomeEmpresa, String TipoInscricao, String Inscricao, String ConvenioCedente, String EntregaDistribuicao, String Duplicata)
{

try
{
SqlCommand Comando = new SqlCommand();
Comando.Connection = Con;

Con.Open();

Comando.CommandText = "Insert Into Contas(Conta, ContaDig, CodigoBanco, Agencia, NomeEmpresa, TipoInscricao, Inscricao, ConvenioCedente, EntregaDistribuicao, Duplicata) Values (@Conta, @ContaDig, @CodigoBanco, @Agencia, @NomeEmpresa, @TipoInscricao, @Inscricao, @ConvenioCedente, @EntregaDistribuicao, @Duplicata)";

Comando.Parameters.AddWithValue("@Conta", Conta);
Comando.Parameters.AddWithValue("@ContaDig", ContaDig);
Comando.Parameters.AddWithValue("@CodigoBanco", CodigoBanco);
Comando.Parameters.AddWithValue("@Agencia", Agencia);
Comando.Parameters.AddWithValue("@NomeEmpresa", NomeEmpresa);
Comando.Parameters.AddWithValue("@TipoInscricao", TipoInscricao);
Comando.Parameters.AddWithValue("@Inscricao", Inscricao);
Comando.Parameters.AddWithValue("@ConvenioCedente", ConvenioCedente);
Comando.Parameters.AddWithValue("@EntregaDistribuicao", EntregaDistribuicao);
Comando.Parameters.AddWithValue("@Duplicata", Duplicata);

Comando.ExecuteNonQuery();
Con.Close();
MessageBox.Show("Conta Incluida Com Sucesso");

Listar("Select * from Contas", FrmContas.DgvContas); // Aqui após a Mensagem de Conta incluida, eu faço a atualização do Datagrid, porém não consigo referenciar o Data Grid(DgvContas)

}

catch (Exception e)
{
MessageBox.Show(e.Message);
Con.Close();
}

}

Share this post


Link to post
Share on other sites

Ao invés de você atualizar o grid direto quando você atualiza a lista, primeiro atualize a lista e retorne a mesma pelo método que você chamou (que está em outra classe), depois no mesmo formulário aonde está o grid, utilize essa lista que você retornou para poder atualizar o elemento.

Share this post


Link to post
Share on other sites

O correto mesmo, seria no evento do botão, você chamar dois métodos: Um que insere e outro que atualiza.

Deixando assim cada método com uma responsabilidade única.

Share this post


Link to post
Share on other sites

Bom Dia Pessoal,

Fiz o Seguinte:

Defini o Data Grid como Public (para poder acessa-lo da classe onde estou inserindo a conta no banco de dados).

Agora após a mensagem de Conta incluida com sucesso, eu faço a atualização do Grid corretamente.

MessageBox.Show("Conta Incluida Com Sucesso");

FrmContas Contas = new FrmContas();
Listar("Select * from Contas", Contas.DgvContas);

Porém o Grid não atualiza.

Estou fazendo alguma coisa errada ??

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.