DESPUES DE ORDENAR UN DATAGRID

28/09/2005 - 18:13 por Selrak | Informe spam
Hola a todos,

Tengo un datagrid al que le aplico un formato condicional, es decir
segun su contenido. Cuando el usuario hace click sobre el header de la
columna, el datagrid se ordena segun ese criterio lo que me resulta muy
util. Lo que pasa es que acto seguido debo volver a aplicar el criterio
o seguiria con el anterior lo que no tiene sentido si el contenido ha
cambiado debido a la ordenación.
He probado capturar el mouse up, mouse down, click.. sin resultado, ya
que parece ser que la ordenacion se produce después de que se ejecute
el evento con lo que me quedo igual (capturo si es encima del column
header con el hitTest).
Ahora mismo estoy aplicando el nuevo formato (criterio) con un timer i
un boolean cada 0,1 segundos, pero me parece muy basto e ineficiente,
aunque funciona. ¿Alguien tiene una idea mejor?
Gracias

Preguntas similare

Leer las respuestas

#1 Selrak
28/09/2005 - 18:40 | Informe spam
Creo que no me he explicado bien. Me refiero a que cuando se ordena
debido al click en el header debo volver a aplicar el FORMATO
condicional, ya que la posicion ha cambiado y no se cuando hacerlo ya
que con los eventos mencionados primero se aplica el formato (con lo
que queda igual) y mas tarde se ordena realmente el datagrid.
Respuesta Responder a este mensaje
#2 Developers
28/09/2005 - 21:06 | Informe spam
haber... no entendi muy bien

Dices que cuando ordenas pierdes el formato o pierdes la posicion de la
fila.




"Selrak" escribió en el mensaje
news:
Creo que no me he explicado bien. Me refiero a que cuando se ordena
debido al click en el header debo volver a aplicar el FORMATO
condicional, ya que la posicion ha cambiado y no se cuando hacerlo ya
que con los eventos mencionados primero se aplica el formato (con lo
que queda igual) y mas tarde se ordena realmente el datagrid.

Respuesta Responder a este mensaje
#3 Selrak
29/09/2005 - 09:45 | Informe spam
La cosa funciona así:
Lleno el datagrid con un dataset. Recorro el datagrid y le doy formato
(color de fondo, por ejemplo) segun el contenido. Hasta ahí todo bien.
Cuando se ordena, cambia el contenido de las celdas, por lo tanto el
formato antiguo ya no es valido ya que este no ha cambiado con la
ordenacion. (Por ejemplo, si una celda està vacia, pongo toda la fila
en rojo para resaltar). Entonces debo aplicar el nuevo formato (poner
en rojo la fila donde ha ido a parar la celda vacia, y de color normal
la que estaba en rojo anteriormente). El problema es que no se que
evento capturar para aplicar de nuevo el formato condicional cuando el
datagrid se ha acabado de ordenar realmente.
Supongo que hay alguna manera de hacer que una fila cambie de color
automaticamente segun el contenido de una de las celdas, pero no se
como hacerlo.

Espero me haya explicado mejor. Gracias.
Respuesta Responder a este mensaje
#4 Selrak
01/10/2005 - 22:19 | Informe spam
¿Alguién puede ayudarme? Si no se entiende vuelvo a explicarlo. Es
que tal y como lo tengo ahora no se pueden hacer mas o menos grande los
campos porque lo detecta como un click en el header y lo refresca todo.

Gracias
Respuesta Responder a este mensaje
#5 LLUIS
12/11/2005 - 09:52 | Informe spam
Estoy interesado en como realizas el formato de cada celda segun el valor
evaluado. Podrías compartir el código, por favor? En cuanto a lo que
planteas, no tengo ni idea porque soy nuevo en esto de programar.

GRACIAS

"Selrak" escribió:

¿Alguién puede ayudarme? Si no se entiende vuelvo a explicarlo. Es
que tal y como lo tengo ahora no se pueden hacer mas o menos grande los
campos porque lo detecta como un click en el header y lo refresca todo.

Gracias


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida