2008-12-16 9 views
0

Je suis en train de trop réfléchir. J'ai des couleurs stockées dans une table de base de données, et je veux placer l'arrière-plan des cellules spécifiques dans une table à ces couleurs. En d'autres termes:Définir la couleur de la cellule du tableau à partir de la base de données

<table> 
    <tr> 
     <td ???set color here???> 
      ...content... 
     </td> 
     <td ???next color here???> 
      ...next content... 
     </td> 
    </tr> 
</table> 

Au départ, j'avait des panneaux entourant chaque morceau de contenu et je leur couleur mis en arrière-plan dans les panneaux code-behind, qui a bien fonctionné jusqu'à ce que je taille variable, qui rejetèrent la mise en page. Quel est le moyen le plus simple de fournir les valeurs de couleur de la base de données à l'élément <td>? Notez que les couleurs sont configurables par l'utilisateur, donc je ne peux pas les avoir prédéfinies dans un fichier CSS. Pourquoi ne pas avoir la base de données peupler le CSS?

Répondre

7

Vous pouvez créer un fichier CSS personnalisé avec des données de base de données en créant un HttpHandler personnalisé.
Mais la manière simple woud être:

<td style="background-color:#000000"> 
... 
</td> 

avec

<td style='background-color:<%= GetCellColor() %>'> 
... 
</td> 
0

.dark { 
    background-color:[database field] 
} 

<td class='dark'></td> 
0

Est-ce une table avec un nombre fixe de lignes/colonnes?

Vous pouvez utiliser le style de code ASP ici.
td backcolor = "<% = MyColorProvider.FirstCellColor%>" .....

Où MyColorProvider.FirstCellColor est la représentation de chaîne de couleur (il pourrait être une chaîne hexagonale aussi bien).

+0

il s'agit d'un ancien sintax html, il est préférable d'utiliser style = "background-color: # 000000", ou une feuille de style css. Et le bon vieux sintax est td bgcolor = "# 000000" –

0

Vous pouvez générer un fichier css à partir de la base de données lors du démarrage de l'application, puis inclure le fichier css dans la page maître.

Questions connexes