Set color cella di una tabella dal database
-
21-08-2019 - |
Domanda
Sono overthinking questo. Ho i colori memorizzati in una tabella di database, e voglio impostare lo sfondo di cellule specifiche di una tabella per quei colori. In altre parole:
<table>
<tr>
<td ???set color here???>
...content...
</td>
<td ???next color here???>
...next content...
</td>
</tr>
</table>
Inizialmente ho avuto pannelli che circondano ogni pezzo di contenuto e impostare il colore di sfondo nel code-behind, che ha lavorato bene fino a quando ho avuto i pannelli di dimensioni variabili, che ha gettato fuori il layout. Qual è il modo più semplice per alimentare i valori di colore dal database al <td>
elemento? Si noti che i colori sono configurabili dall'utente, quindi non posso averli pre-definite in un file CSS.
Soluzione
È possibile creare un file CSS personalizzato con i dati del database attraverso la creazione di un custom HttpHandler.
Ma il modo più semplice woud essere:
<td style="background-color:#000000">
...
</td>
con
<td style='background-color:<%= GetCellColor() %>'>
...
</td>
Altri suggerimenti
Perché non avere il DB popolare il CSS?
.dark {
background-color:[database field]
}
<td class='dark'></td>
Si tratta di una tabella con numero fisso di righe / colonne?
È possibile utilizzare lo stile ASP di codice qui.
td backcolor = "<% = MyColorProvider.FirstCellColor%>" .....
Dove MyColorProvider.FirstCellColor è la rappresentazione di stringa di colore (che potrebbe essere una stringa esadecimale pure).
È uscita un file CSS fromt il database quando l'applicazione si avvia, e quindi potrebbe includere il file CSS nella pagina master.