Visual Basic.NET - VB.NET2003: DataGrids + iconos y colores dinámicos

 
Vista:

VB.NET2003: DataGrids + iconos y colores dinámicos

Publicado por Sagawa (1 intervención) el 03/04/2007 12:43:00
Hola.
Os planteo mis dudas de novato respecto al DataGrid (y DataTable) y el uso de imágenes y colores en él, que me están rompiendo la cabeza.

Antes de nada diré que me veo obligado a usar VisualBasic.NET2003 y no otra versión. (Así que muchas cosas de VB.NET2005 no valen).

---> Lo que tengo es esto:
- Es una solución "multiproyecto".
- En un "proyecto" tengo una DataTable (que además está en un DataSet) con una serie de datos (unas 700 filas por unas 20 columnas) y en la que modifico alguna fila (no todas) cada 1 o 2 segundos (hago una monitorización vía OPC).
- En un formulario de otro "proyecto" tengo un DataGrid que está unido a la DataTable, de manera que cuando cambia algo en la DataTable se actualiza automáticamente el DataGrid.
- El proyecto que llena el DataTable no tiene acceso al proyecto con el formulario del DataGrid (a no ser que me digáis cómo evitar los errores de "referencia circular"), por eso dependo de la actualización automática debida al DataBinding entre DataTable y DataGrid.


---> Lo que quiero es esto:
- Quiero tener en el DataGrid una columna que muestre "automáticamente" un icono según el valor de una celda.
Por ejemplo, si la celda vale 0 que ponga un icono de "OK", si vale 1 un icono de "Error" y si es un 2, un icono de "Aviso", o algo similar. Lo que estaría bien sería que se hiciese de forma automática (debido al DataBinding), sin tener que lanzar una función que recorriese toda la DataGrid (o, al menos, que sólo recorriese las filas que han cambiado, para ahorrar tiempo).

- También quiero que el color de fondo de la fila entera varíe según el valor de una celda (la anterior u otra) de la misma manera.

---> Y mis mayores dudas son:
1) - ¿Puedo poner imágenes directamente en el DataTable y mostrarlas en el DataGrid? (Así aprovecho la actualización automática debida al DataBinding)
2) - ¿Cómo muestro imágenes en el DataGrid? No he sido capaz de mostrar iconos. Pero imagino que se podrá hacer, ¿no? ¿.gif, .png, .bmp? ¿Necesito usar una ImageList? ¿Formatear de alguna manera la columna (y cómo)?
3) - ¿Cómo hago que cambie el color automáticamente?


No sé si me he expresado suficientemente bien. Si tenéis dudas, os aclararé lo que haga falta.
La ayuda me sería realmente útil.

¡¡Confío en vosotros, muchachos!!

Sagawa
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