Usuário com melhor resposta
DataGridView + Imagem no Evento Cell_Formating

Pergunta
-
Olá Pessoal,
estou colocando uma imagem dinâmica no DataGridView de acordo com determinada condição.
Estou colocando essa imagem, que encontra-se em um arquivo de recurso (resource file).
Funcionou perfeitamente, no entando fica "piscando" parecendo que está em um Loop. Na verdade está pq quando coloco um BreakPoint no evento ele entra toda hora!!!
Minha pergunta é: Existe outro evento que coloque essa lógica? Existe uma forma melhor de colocar a imagem?
O código é mais ou menos assim:
Se e.RowIndex>1 então
Se datagridView1.Item(1,e.Rowindex) = X então
datagridView1.Item(2,e.Rowindex).Value= arquivodeRecurso.nomeimagem
Respostas
-
-
Bom Pessoal. Consegui resolver o problema.
Segue o registro para alguém saber solucionar quando tiver o mesmo problema que eu.
No campo IMAGEM eu coloquei a propriedade IMAGELAYOUT como STRETCH. Ou seja, preenche a célula toda com a imagem. ISSO JÁ TIRA o EFEITO "PISCA-PISCA". Porém para deixar um melhor performance eu valida no evento se a coluna que ele está formatando é a coluna da imagem. De negrito o que melhorou:
Se e.RowIndex>-1 AND e.ColumIndex=1 então
Se datagridView1.Item(1,e.Rowindex) = X então
datagridView1.Item(2,e.Rowindex).Value= arquivodeRecurso.nomeimagem
Abraços,
Maxwel
Todas as Respostas
-
Bom Pessoal. Consegui resolver o problema.
Segue o registro para alguém saber solucionar quando tiver o mesmo problema que eu.
No campo IMAGEM eu coloquei a propriedade IMAGELAYOUT como STRETCH. Ou seja, preenche a célula toda com a imagem. ISSO JÁ TIRA o EFEITO "PISCA-PISCA". Porém para deixar um melhor performance eu valida no evento se a coluna que ele está formatando é a coluna da imagem. De negrito o que melhorou:
Se e.RowIndex>-1 AND e.ColumIndex=1 então
Se datagridView1.Item(1,e.Rowindex) = X então
datagridView1.Item(2,e.Rowindex).Value= arquivodeRecurso.nomeimagem
Abraços,
Maxwel
-