Portada » Preguntas Frecuentes de .NET 6 » ¿Cómo crear tablas (Tablix) con filas de colores alternos en RDLC?

¿Cómo crear tablas (Tablix) con filas de colores alternos en RDLC?

Para implementar una tabla con filas de colores alternos en RDLC, tan solo hay que ir a la propiedad «Background Color» de las celdas a las que queremos afectar y luego a «Expression«. Es importante destacar que debes señalar todas las celdas que quieres que se vean afectadas por este cambio, si no vas a tener que luego ir una a una 😅.

Visual Studio 2022 señalando en el panel "Properties", la propiedad "BackgroundColor" para acceder a las expresiones.

Si no sabes cómo llegar hasta este punto, te sugiero echarle un ojo a mi artículo sobre «¿Cómo cargar datos de una base de datos a un informe RDLC?«, donde vemos cómo cargar los datos y también cómo añadir el Tablix a tu informe RDLC.

Esto abrirá una nueva ventana que te permitirá crear una expresión en Visual Basic. En nuestro caso, solo tendremos que aplicar esto:

= IIF(RowNumber("DataSetCursos") MOD 2 = 0, "WhiteSmoke", "Transparent")

Donde «DataSetCursos» debe ser el nombre del dataset asignado para ese Tablix. En este caso, estamos diciéndole al RDLC que si el número interno de la fila es un número par (MOD 2 = 0), que nos ponga el fondo grisaceo; y sino, que sea transparente. Podríamos conseguir que las filas impares sean las que tengan colores alternos tan solo negando la condición (< >):

= IIF(RowNumber("DataSetCursos") MOD 2 <> 0, "WhiteSmoke", "Transparent")

Para el ejemplo, continuaremos utilizando el primer ejemplo con las filas pares. Por lo tanto, hecho eso, veréis algo tal que así:

Imagen de Visual Studio 2022 señalando cómo en el "BackgroundColor" del panel de propiedades ahora sale la expresión que hemos agregado.

Una vez exportamos, se vería algo tal que así:

Resultado en PDF de la exportación de nuestro sistema de filas de colores alternos en RDLC.

Con esto ya podríamos seguir añadiendo filas a nuestra base de datos y el Tablix se encargaría de poner las filas de colores alternos automáticamente en todas las filas pares.