EXIBIR E RECUPERAR DADOS DA CLASSE POO

MAXCIM 13/03/2016 10:53:15
#459072
Olá amigos,
estou trabalhando para passar vários procedimentos do meu sistema para orientação a objetos.
mas me deparei com um problema:
criei a classe , preenchi a classe e exibi os dados em um data gridview.
o usuário deverá selecionar o checkbox da row do datagrid.
depois devo gerar outro objeto list com as rows selecionadas pelo usuário.

hoje estou rodando de maneira procedural percorrendo o datagrid e criando o novo list com cada linha/cell ticado pelo usuário.
mas creio que deva ter uma maneira orientada a objeto de extrair do grid as linhas selecionadas.


desde já agradeço.
KERPLUNK 13/03/2016 11:53:11
#459074
Resposta escolhida
Implemente propriedades boolean para [Ô]Alterado[Ô] e [Ô]Novo[Ô], então você pode fazer uma expressão lambda para verificar os que estão com a propriedade [Ô]Alterado[Ô] marcada como true. Basta adicionar essas duas propriedades na sua classe e ao alterar qualquer outra, marca a propriedade [Ô]Alterado[Ô] como verdadeira. Dessa maneira você pode pegar somente os ítens que foram alterados e ter uma lista separa deles. Veja o fiddle que fiz
JABA 13/03/2016 17:57:26
#459084
Você agora precisará fazer o processo inverso. Ou seja, ao percorrer os dados, é só converter cada registro para o tipo da sua classe.

Ex:

dim lista as new List(of [txt-color=#e80000]Cliente[/txt-color])

[ô]para cada registro no grid faça
if registro.checked = true then [ô]registro é a referência para cada linha do seu grid
lista.add(ctype(registro, Cliente))
end if

Se seu grid foi preenchido diretamente pelas instâncias de sua classe, então, não será necessário fazer uma conversão de tipos, daí ficaria assim:

if registro.checked = true then
lista.add(registro)
end if

MAXCIM 13/03/2016 18:09:31
#459085
Kerplunk, você é fantástico cara! matou a pau!

valeu brigadão!

estou ansioso por novo vídeo C# oop basicão!
abraços
JABA 18/03/2016 18:55:52
#459450
Por favor, não deixe de encerrar o tópico e pontuar quem lhe ajudou.

Obrigado.
Tópico encerrado , respostas não são mais permitidas