BackColor de solo una linea?

26/07/2005 - 12:44 por Sonia | Informe spam
hola
tengo un listview q esta ordenado x fechas
me gustaria q el backcolor de las lineas q tenga las fecha q pongo yo en un
textbox cambie respectoa las demas.
he intentado en cambiar el color pero se cambia de todo el listview.
como puedo hacer q cambia de las lineas q yo kiero?
gracias
 

Leer las respuestas

#1 Ch0rY
27/07/2005 - 11:56 | Informe spam
Prueba con esto, no te prometo nada, pero prueba
No he podido probarlo pues el equipo donde tengo el VB.Net esta en coma :(

'Columna operadora | fecha | dato1 | dato2|| datoN
'Subitem 0 | 1 | 2 | 3 || N-1

Private Sub txt_Fecha_TextChanged(ByVal sender As System.Object, ByVal e As
_ System.EventArgs) Handles txt_Fecha.TextChanged

' Cuando cambie la fecha en el textbox llamamos a CambiaColor
call CambiaColor

End Sub



sub CambiaColor()
' Recorremos los items (filas) del listview
' Como los items son arrays de indice 0 recorremos desde el 0 (el 1º)
' hasta el ultimo, que seria igual al nº de filas que "contiene" -1
for Contador=0 to listview.items.count-1
' si el texto del subindice(1)<-Fecha = al texto del textbox
if listview.items(Contador).subitem(1).text=txt_Fecha.text then
' Ponemos el fondo de color verde
listview.items(Contador).backcolor=color.green
'si no es igual
else
' Ponemos el fondo de color blanco
listview.items(Contador).backcolor=color.white
end if
next
end sub

a) seguro que se podria usar un for each en lugar de for next
b) si tienes varios listviews, o varios textbox, con los que debes hacer lo
mismo, podrias pasar algun argumento a la subfuncion, x cierto, pa los que
saben, es correscto llamarlo subfuncion o seria mas correcto procedimiento,
pues no debuelve ningun valor?


Chory

Preguntas similares