ADICIONAR UMA LINHA DATAGRIDVIEW BIDINGSORCE

 Tópico anterior Próximo tópico Novo tópico

ADICIONAR UMA LINHA DATAGRIDVIEW BIDINGSORCE

C#

 Compartilhe  Compartilhe  Compartilhe
#477581 - 03/11/2017 18:44:37

MRSILVA
MARINGA
Cadast. em:Julho/2015


Olá.
Pessoal preciso de uma ajuda para adicionar uma nova linha em um dataGridView que está vinculado em um BidingSorce.

Tenho um formulário (Pai) Fornecedores que tem um dataGrid (filho) que pode conter vários endereços, preciso adicionar um novo registro no DataGrid referente o registro Pai atual.

Minha classe fornecedor tem uma lista de endereços

O formulário está funcionando perfeitamente quando eu manualmente acesso o dataGrid  e preencho as células, ou seja cria a linha automaticamente, só que preciso criar uma linha em branco via código  não estou conseguindo.

Tentei de varias formas uma delas foi conforme abaixo:

((Fornecedor)dados.Current).enderecos.Add(new Endereco());



Partes do código referente a vinculação.

List<Fornecedor> listaFornecedor = Recebe informações do banco de dados
public BindingSource dados = new BindingSource();

dados.DataSource = listaFornecedor;

//Vinculação do dataGrid
dgvEndereco.DataMember = "enderecos";
dgvEndereco.DataSource = dados;


Fiz diversas pesquisas até encontrei esse  tópico http://www.vbmania.com.br/index.php?modulo=forum&metodo=abrir&id=461997, mas não consegui aplicar porque no meu caso preciso criar um registro filho.

Desde já agradeço a ajuda.



#477587 - 03/11/2017 23:18:08

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Cara eu consegui fazendo dessa forma; Link

Mas utilizar um List<> e preencher manualmente a grid é melhor

__________________________________
- Everyone has a chance

#477591 - 04/11/2017 01:35:09

MRSILVA
MARINGA
Cadast. em:Julho/2015


Obrigado Magnan.

Trabalho com Entity Framework e o mesmo trabalha melhor com listas, não estou utilizando Datatable.
Meu BidingSorce está vinculado a uma lista.

Alguém pode me dar uma dica de como resolver isso, desde já agradeço.




#477593 - 04/11/2017 11:48:53

MRSILVA
MARINGA
Cadast. em:Julho/2015


Olá pessoal.

A resposta para meu problema já estava respondida nesse tópico que tinha mencionado.

Estava faltando somente desvinculara o dataGrid do BidingSorce e vincular novamente conforme abaixo:

((Fornecedor)dados.Current).enderecos.Add(new Endereco());
dgvEndereco.DataMember= "";
dgvEndereco.DataSource = "";
dgvEndereco.DataSource = dados;
dgvEndereco.DataMember = "enderecos";

Vou deixar o tópico aberto mais um tempo caso alguém tenha uma solução melhor.
Desde já agradeço.



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por MRSILVA em 09/11/2017 10:15:24