Visual Basic.NET - Seleccionar una fila de un datagrid

 
Vista:
sin imagen de perfil

Seleccionar una fila de un datagrid

Publicado por anonymous (99 intervenciones) el 14/09/2016 02:48:40
Hola Amigos:
nuevamente los molesto con el siguiente problema, no encuentro la manera de seleccionar los datos de una fila de un datagridview al hacer click sobre ella, este es mi código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub DataGridView2_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView2.CellContentClick
    fechaconsulta = DataGridView2.Item(0, e.RowIndex).Value 'columna 0 va la fecha de consulta
    horaconsulta = DataGridView2.Item(1, e.RowIndex).Value 'columna 1 va la hora de consulta
    Dim conn2 As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\medico.accdb"
    Dim cmd2 As OleDbConnection = New OleDbConnection(conn2)
    Dim alumDataSet2 As New DataSet
    Dim tAdapter2 As OleDbDataAdapter = New OleDbDataAdapter
    tAdapter2.SelectCommand = New OleDbCommand("SELECT * FROM visitas WHERE hora Like '" + horaconsulta + "'", cmd2)     '' aqui selecciono la hora de consulta de la fecha clikada, pueden ser varias consultas en un dia, por lo que quiero los datos de la consulta exacta.
    alumDataSet2.Tables.Add("visitas")
    tAdapter2.Fill(alumDataSet2.Tables("visitas"))
    lista = alumDataSet2.Tables("visitas").Rows.Count
    cmd2.Close()
    Dim dr As DataRow
    For Each dr In alumDataSet2.Tables(0).Rows
        'If dr.Table.Rows(0).ToString = horaconsulta Then
        TextBox1.Text = dr.Table.Rows(0).ToString
        'End If
    Next
    'aqui se cargan sintomas tratamiento y 
End Sub

Alguna sugerencia? GRACIAS! por su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Seleccionar una fila de un datagrid

Publicado por omar (155 intervenciones) el 14/09/2016 02:57:09
1
2
3
4
5
6
7
8
9
10
11
12
13
14
dim currentRow  as integer
currentRow = CType((e.RowIndex.ToString()), Integer) ''Obtiene la fila actual
' Dim cc As Integer = CType((e.RowIndex.ToString()), Integer) ''Obtiene la fila actual
 
espero te sirva para seleccionar los datos
If IsDBNull(Convert.ToString(dgvclientes(2, currentRow).Value)) Then
Else
    nombre = Convert.ToString(dgvclientes(2, currentRow).Value)
End If
 
'If IsDBNull(Convert.ToString(dgvclientes(3, currentRow).Value)) Then
'Else
'    apelldios = Convert.ToString(dgvclientes(3, currentRow).Value)
'End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Seleccionar una fila de un datagrid

Publicado por Miguel (476 intervenciones) el 14/09/2016 02:59:53
Hola,
No entiendo, dónde falla?...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Seleccionar una fila de un datagrid

Publicado por anonymous (99 intervenciones) el 14/09/2016 18:27:23
Gracias por su atención:
Omar, voy a probar tu sugerencia, estoy haciendo ajustes con tus lineas propuestas.
Miguel, sucede que en mi código no agarra la linea clikada, o sea si un paciente enlistado en el dvgrid tiene cuatro consultas y cliko la 3a, no corresponde a los datos que espero, casi siempre corresponden a la primera linea.
Saludos a los dos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Seleccionar una fila de un datagrid

Publicado por Miguel (476 intervenciones) el 14/09/2016 18:51:18
Entiendo. Pues yo uso el evento 'CellDoubleClick' del DataGridView, usando la propiedad 'SelectedRows' para obtener los datos, y me funciona perfectamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.239
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Seleccionar una fila de un datagrid

Publicado por Wilfredo Patricio Castillo (718 intervenciones) el 15/09/2016 23:38:53
Eso es tan sencillo como esto:

Dim AlgunValor as integer

AlgunValor=tudatagridview.Item(0,tudatagridview.CurrentRow.Index).Value

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Seleccionar una fila de un datagrid

Publicado por anonymous (99 intervenciones) el 21/09/2016 00:48:57
Gracias Wil, me ha funcionado perfectamente bien
Amigo de verdad gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Seleccionar una fila de un datagrid

Publicado por anonymous (99 intervenciones) el 21/09/2016 02:06:39
Hola a todos:
siguiendo con mi datagridview ahora tengo este problema: En una columna no puedo accesar todos los caracteres que tiene mi campo de la BD. aqui lo explico:
1
2
3
4
5
6
DataGridView2.ColumnCount = 5      'pongo el datagrid a 5 columnas
DataGridView2.Columns(2).Width = 400     'la columna tercera la hago mas amplia para que quepa todo
Dim dr1 As DataRow
For Each dr1 In alumDataSet2.Tables("visitas").Rows
    DataGridView2.Rows.Add(dr1.Item(1).ToString().Substring(0, 10), (dr1.Item(5).ToString().Substring(11)), (dr1.Item(2).ToString().Substring(0, 11)), (dr1.Item(3).ToString().Substring(0, 11)), (dr1.Item(4).ToString().Substring(0, 11)))
Next

el resultado: en la columna 3 aparece cortada la leyenda que tengo: "padece de i". Cuando debe decir: "Padece de infección intestinal aunado a una fuerte oclusión de los intestinos gruesos".

¿Cómo hago para que en el datagridview aparezca toda la leyenda? GRACIAS amigos!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.239
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Seleccionar una fila de un datagrid

Publicado por Wilfredo Patricio Castillo (718 intervenciones) el 22/09/2016 02:39:46
Imagino que el datarow, debe tener una propiedad value, algo así: rd1.item(1).Value o me equivoco?.

De ser cierto lo del value prueba así;

DataGridView2.Rows.Add(Mid(dr1.Item(1).Values,0,10) & " " & Mid(dr1.Item(5).Value,0,11)) y así concatenar tus valores.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Seleccionar una fila de un datagrid

Publicado por anonymous (99 intervenciones) el 22/09/2016 20:49:11
Gracias Wilfredo amigo. Voy a probar esta solucion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar