Jump to content

Seleccionar uma linha na DataGridView1


Seabra
 Share

Recommended Posts

Olá

Necessitava de seleccionar uma linha na DataGridView1, mas depois de várias pesquisas não encontro a solução.

Se eu utilizar este código  DataGridView1.CurrentCell = DataGridView1.Item(1, 4) vai apontar para a linha 4 e só foca a célula.

Eu pretendo é seleccionar  a linha completa e que fique não como seleccionada mas sim como CurrentRow.

Pretendo utilizar isto para que depois de fazer o refresh à DataGridView1 esta se posicione na mesma linha em que estava.

Cumprimentos

Link to comment
Share on other sites

não sei se é isto que pretendes mas para sempre que clicares numa célula, ficar seleccionado a respectiva linha completa, tens uma propriedade da DataGridView que se chama selectionMode. E ai escolhes a opção FullRowSelect

O que eu pretendo é mesmo seleccional uma linha por código  e que fique como default row.

Cumprimentos

Link to comment
Share on other sites

Mas queres que, sempre que haja um click numa célula, automaticamente seleccione toda a linha, ou uma em especifico?

Por exemplo, quando faço um INSERT por código, o Datagrid vai colocar o focus na primeira linha, ou seja a primeira linha passa a ser a CurrentRow. Se eu guardar a posição onde estava o cursor do DataGrid antes do insert, posso no final do insert posicionar-me na mesma linha que estava antes.

Se eu utilizar

DataGridView1.CurrentCell = DataGridView1.Rows(linha).Cells(coluna)

, só me vai seleccionar a célula. Deve haver alguma forma de eu indicar uma linha para posicionar o cursor.

Cumprimentos

Link to comment
Share on other sites

Depois de várias tentativas e pegando no código das vossas sempre preciosas ajudas, saíu isto que funciona. No entanto não sei se há outra forma mais simples de o fazer?

Dim Pos As Integer 'Posição destino

        'Guarda a linha actual onde me encontro
        Pos = DataGridView1.CurrentRow.Index


        'Aqui escrevo o meu código de Update ou Insert da tabela. (este códifo faz com que o cursor se posicione sempre no topo do datagridview)
        

        'Envia o cursor da tabela para a posição guardada
        DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
        DataGridView1.CurrentCell = DataGridView1.Item(0, Pos)
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.