SELECIONAR LINHA DE UM DATAGRIDVIEW
Bom dia a todos,
Preciso selecionar via código uma linha de um grid de uma coluna (0) que tenha o valor 5 por exemplo.
Alguém pode ajudar?
Preciso selecionar via código uma linha de um grid de uma coluna (0) que tenha o valor 5 por exemplo.
Alguém pode ajudar?
como vc está preenchendo o datagrid ?
Ai está, preciso de saber isto.
Tenho que fazer um select?
Preencho o grid de uma tabela.
Depois quando vou fazer uma inclusão, vejo se o item já existe e seleciono a linha .
No select, já vejo se existe o item na tabela, que é o mesmo do grid, preciso só selecionar a linha no grid com determinado valor [Ô]integer[Ô] da coluna 0.
Tenho que fazer um select?
Preencho o grid de uma tabela.
Depois quando vou fazer uma inclusão, vejo se o item já existe e seleciono a linha .
No select, já vejo se existe o item na tabela, que é o mesmo do grid, preciso só selecionar a linha no grid com determinado valor [Ô]integer[Ô] da coluna 0.
Citação::
Bom dia a todos,
Preciso selecionar via código uma linha de um grid de uma coluna (0) que tenha o valor 5 por exemplo.
Alguém pode ajudar?
boa tarde Brown, faz assim.
Dim SuaVariavel as string
SuaVariavel = Me.dgv_SuaDataGrid.CurrentRow.Cells(1).Value.ToString
Porque [Ô]ToString[Ô]?
Segue em exemplo
For Each i As DataGridViewRow In DataGridView1.Rows
If i.Cell(0).Value = 5 Then
DataGridView1.CurrentCell = DataGridView1.Rows(i).Cells(0)
End If
Next
Pessoal, exemplo do JOHNSTEVE não funcionou.
Exemplo do MAGNAN, também não funcionou. Fiz uma mudança ai leu, veja
Dim LinLin As String = txtSeq.Text
For Each i As DataGridViewRow In dgvAuto.Rows
If i.Cells(0).Value = LinLin Then
dgvAuto.CurrentCell = dgvAuto.Rows(LinLin - 1).Cells(0) [ô]dgvAuto.Rows(i).Cells(0)
End If
Next
E o que melhor funcionou foi este. Se não me engano, este do do Macoratti.
Dim texto As String = Nothing
txtSeq.Text = Seq
If txtSeq.Text <> [Ô][Ô] Then [ô]String.Empty Then
[ô]percorre cada linha do DataGridView
For Each linha As DataGridViewRow In dgvAuto.Rows
[ô]percorre cada célula da linha
For Each celula As DataGridViewCell In dgvAuto.Rows(linha.Index).Cells
[ô]se a coluna for a coluna 1 (Nome) então verifica o criterio
If celula.ColumnIndex = 0 Then
texto = celula.Value.ToString.ToLower
[ô]se o texto informado estiver contido na célula então seleciona toda linha
If texto.Contains(txtSeq.Text.ToLower) Then
[ô]seleciona a linha
Me.dgvAuto.Rows(celula.RowIndex).Selected = True
Exit Sub
End If
End If
Next
Next
End If
Caso tenham algum comentário, srá útil antes de encerrar o tópico.
Exemplo do MAGNAN, também não funcionou. Fiz uma mudança ai leu, veja
Dim LinLin As String = txtSeq.Text
For Each i As DataGridViewRow In dgvAuto.Rows
If i.Cells(0).Value = LinLin Then
dgvAuto.CurrentCell = dgvAuto.Rows(LinLin - 1).Cells(0) [ô]dgvAuto.Rows(i).Cells(0)
End If
Next
E o que melhor funcionou foi este. Se não me engano, este do do Macoratti.
Dim texto As String = Nothing
txtSeq.Text = Seq
If txtSeq.Text <> [Ô][Ô] Then [ô]String.Empty Then
[ô]percorre cada linha do DataGridView
For Each linha As DataGridViewRow In dgvAuto.Rows
[ô]percorre cada célula da linha
For Each celula As DataGridViewCell In dgvAuto.Rows(linha.Index).Cells
[ô]se a coluna for a coluna 1 (Nome) então verifica o criterio
If celula.ColumnIndex = 0 Then
texto = celula.Value.ToString.ToLower
[ô]se o texto informado estiver contido na célula então seleciona toda linha
If texto.Contains(txtSeq.Text.ToLower) Then
[ô]seleciona a linha
Me.dgvAuto.Rows(celula.RowIndex).Selected = True
Exit Sub
End If
End If
Next
Next
End If
Caso tenham algum comentário, srá útil antes de encerrar o tópico.
Tópico encerrado , respostas não são mais permitidas