Jump to content

Como mover a seleção do Datagrid, para linha anterior ou próxima linha?


williamjda
 Share

Go to solution Solved by williamjda,

Recommended Posts

Boa tarde amigos.

Tenho uma dúvida como posso navegar pelo datagrid?

Tenho o seguinte código, mas não funciona. Preciso que ao clicar no botão anterior a seleção se mova ou para a próxima linha.

Datagrid_Dados.Rows.GetLastRow(Datagrid_Dados.CurrentRow.Index)
Edited by williamjda
Link to comment
Share on other sites

  • Solution

Bom amigos bom dia.

Após muito insistir eu consegui entender como funcionar o DataGrid. kkkk

Não achei nenhum exemplo na internet que me falasse como fazer. Mas eu entendi em um exemplo que eu tinha para mover para a primeira linha a seleção.

Sendo assim a minha solução ficou assim.

Aqui é o exemplo que move para a primeira linha. Sendo que (0,0) é a posição inicial do dataGrid.

		Orcamento_Novo.DataGrid_Dados.CurrentCell = Orcamento_Novo.DataGrid_Dados(0, 0)

Então entendi que se eu aumentar o segundo zero para 1 ele vai para a segunda linha e assim sucessivamente. Então criei um loop. Fiz um select que preenche a variável quantidadeAcessorioProdutoCalculo com a quantidade de acessórios que tem meu produto. Esse acessórios aparecem no datagrid.

Com isso se houver 9 acessórios o variável nextLinha é preenchida com a soma da variável linhaInicial que recebe o Valor inicial de 0 e soma que o nextLinha a cada vez que o loop é executado.

Então o nextLinha recebe +1 para poder ir para a próxima linha. No meu caso eu precisava que ele percorresse automaticamente as linhas por isso tive que fazer assim se fosse um botão bastava somar mais um a cada clique.

com o nove (0,9) assim o loop é executado 9 X automaticamente da forma que eu preciso. Amigos não sei se essa é a melhor pratica, mas para mim funcionou e resolveu meu problema. Como ninguém respondeu meu post, resolvi compartilhar a solução que eu desenvolvi para o meu problema. Espero que tenha dado para entender.

  Dim i
	    i = 1
	    For i = 1 To quantidadeAcessorioProdutoCalculo 'Aqui 9 que é a quantidade de vezes que ele deve ser executado
	    Next i

	    nextLinha = Orcamento_Novo.linhaInicial
	    Orcamento_Novo.DataGrid_Dados.CurrentCell = Orcamento_Novo.DataGrid_Dados(0, nextLinha)

  linhaInicial = nextLinha + 1
	    Do While i <= quantidadeAcessorioProdutoCalculo
	    i = i + 1
	    Loop

Obrigado a todos.

Edited by williamjda
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.