Visual Basic - Que parte del codigo esta mal aqui

Life is soft - evento anual de software empresarial
 
Vista:

Que parte del codigo esta mal aqui

Publicado por Carlos (50 intervenciones) el 03/08/2009 15:12:10
Hola a todos
pasa que tengo un combo y un datagridview al que le llame gridMateriales
Se cargan los mismos datos en el combo y en el grid, solo que en este ultimo mas detallado
La idea es que al seleccionar algun dato en el combo, en el grid se desplaze a la fila que contiene el mismo dato del combo. Asi si en el combo selecciono 'Ladrillos' en el grid se desplaze a la fila que contiene 'Ladrillos'
Este codigo funciona a medias ya que selecciona la fila pero al seleccionar otro dato del combo, en el grid tambien selecciona los datos, y quedan marcadas dos filas y va seleccionando cada fila que coincide con el combo. Asi si tipeo en el combo uno a uno los datos, en el grid van seleccionando cada uno de los datos. Ej si con el cursor voy bajando en el combo 5 datos, en el grid se selecciona 5 filas.
Tambien el grid queda estático y no avanza de acuerdo a los datos cargados y no se mueve la flechita negrita ubicada al costado del grid y la idea es que se desplaze.

saludos

Dim Filtro As String = cmbMat.Text.ToLower
For Each row As DataGridViewRow In GridMateriales.Rows

Dim rowText As String = row.Cells("COS_DESCR").Value.ToString().ToLower()

If Filtro = rowText Then
row.Selected = True
Exit For
End If
Next
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

RE:Que parte del codigo esta mal aqui

Publicado por JaImE GuErReRo (361 intervenciones) el 03/08/2009 17:17:04
lo que estas haciendo ahi es que se marque la fila dependiendo de lo que seleccionas en el combo, y como nunca limpias la grilla siempre te deja marcadas las anteriores.

creo que tienes dos opciones, una es recorrer la grilla y donde este seleccionada ponerle selected=false, y luego hacer el codigo que tienes arriba.

lo otro seria hacerle un databind() a la grilla.

y esto no es ado, es asp.net (si no me equivoco :P), asi que para que siempre tengas a alguien q te ayude ponlo en el foro indicado
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

RE:Que parte del codigo esta mal aqui

Publicado por Carlos (50 intervenciones) el 03/08/2009 18:35:59
Hice lo que me dijiste y funciona, el codigo quedo asi
Dim rowText As String = row.Cells("COS_DESCR").Value.ToString().ToLower()
row.Selected = False
If Filtro = rowText Then
row.Selected = True
Exit For
End If
pero la grilla queda estática, la grilla tiene una altura x , Si los datos están mas abajo no se visualiza, tenes idea que nombre tiene esa parte gris ubicada al costado porque mis escasos conocimientos indican que al mover la flechita negra que esta en el costado, ahi si resulta mejor

Saludos
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