ERRO DATAGRIDVIEW ENTITYFRAMEWORK

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

ERRO DATAGRIDVIEW ENTITYFRAMEWORK

C#

 Compartilhe  Compartilhe  Compartilhe
#480073 - 09/03/2018 08:59:15

MRSILVA
MARINGA
Cadast. em:Julho/2015


Última edição em 09/03/2018 09:19:05 por MRSILVA

Olá.
Tenho um aplicativo que utilizo Entity Framework e acontece um erro muito estranho que não consigo descobrir o motivo, vou tentar explicar:
Em um formulário faço a busca de dados através do EF e carrego  em uma lista, dessa lista eu carrego outra lista referente à outra classe (essa classe não faz parte EF) e através dessa lista carrego um DataGridView passando para DataSorce a segunda lista o carregamento acontece corretamente, o erro acontece quando eu clico em qualquer célula do DGV (System.IndexOutOfRangeException: 'O índice -1 não tem um valor.’), mas quando eu passo para o meu DGV a lista diretamente vindo do EF nenhum erro acontece.

Para carregar a lista referente a classe que não está ligado com EF eu faço o carregamento propriedade por propriedade, ou seja, não existe ligação com EF.

Preciso fazer dessa forma pelo motivo que as informações do DGV são complexos e tem que ser tratados via programação.

Já fiz vários testes até criei um novo formulário, mas o erro acontece da mesma forma.

Alguém sabe me explicar o motivo.
Desde já agradeço.




Resposta escolhida #480077 - 09/03/2018 09:37:42

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
E não tem nenhum evento relativo à células no DataGrid?

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#480078 - 09/03/2018 10:28:28

MRSILVA
MARINGA
Cadast. em:Julho/2015


Kerplunk.

Criei um formulário novo com  DataGridView em branco somente com o código que carrega os dados.




#480079 - 09/03/2018 10:45:24

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
O DataSource é um List<T>?

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#480082 - 09/03/2018 11:26:53

MRSILVA
MARINGA
Cadast. em:Julho/2015


Kerplunk.

Sim




#480083 - 09/03/2018 11:57:24

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Pode passar a estrutura pra eu tentar replicar?

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#480088 - 09/03/2018 15:22:11

CLEVERTON
SERRINHA
Cadast. em:Dezembro/2003


Membro da equipe
Será que vc não está tentando manipular diretamente a célula em vez de manipular o objeto ?



#480089 - 09/03/2018 17:32:06

MRSILVA
MARINGA
Cadast. em:Julho/2015


Olá Cleverton.

Não tem nenhum código relacionado com célula, fiz um formulário novo para testar que tem somente com um botão e um DGV, onde eu passo minha lista para o dataSorce do DGV (Fiz também o teste passando um BindingSorce) a lista carrega normalmente, mas  quando o DGV recebe qualquer foco nas celulas ocorre o erro (não tenho nenhum código nos eventos).  O mais engraçado é que seu passar a lista que vem do EF tudo funciona normalmente.

Não consegui preparar uma estrutura para passar para o Kerplunk, mas vou fazer um projetinho amanha com as mesmas estruturas das classes relacionadas com o erro  para testar e se o erro persistir vou disponibilizar esse projeto.

Esse meu projeto iniciei no Visual Studio 2015 e recentemente instalei o Visual Studio 2017 será que pode ser alguma coisa relacionada?





#480092 - 09/03/2018 23:56:54

CLEVERTON
SERRINHA
Cadast. em:Dezembro/2003


Membro da equipe

Última edição em 09/03/2018 23:57:53 por CLEVERTON

é MySQL ?

Posta o seu código ai



#480095 - 10/03/2018 09:24:38

GUIMORAES
ITAPETININGA
Cadast. em:Agosto/2009


MRSILVA

O problema é que você está passando um List<T> para o seu datagrid.
Para resolver isto, você deve passar um BindingList<T>.




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


Tópico encerrado, respostas não sao permitidas
Encerrado por MRSILVA em 23/10/2018 16:18:11