ADICIONAR UMA LINHA DATAGRIDVIEW BIDINGSORCE
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.
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.
Cara eu consegui fazendo dessa forma; Link
Mas utilizar um List<> e preencher manualmente a grid é melhor
Mas utilizar um List<> e preencher manualmente a grid é melhor
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.
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.
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.
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 encerrado , respostas não são mais permitidas