2016-07-03 4 views
0

In meiner aspx Ich habe diese:Wie erhält man den Wert des Stilattributs aus einem Code hinter der Eigenschaft?

<style type="text/css"> 
     .item .item_background .item_general_info .button_wrapper .add_button { 

      background-color: /* MyProp from code behind */ 
     } 

    </style> 

Auf dem Code hinter:

public String MyProp 
{ 
    get {return DB.GetColor();} 
} 

Wie kann ich den Wert der Hintergrundfarbe gesetzt dynamisch aus dem Code hinter?

Dank

+0

Haben Sie ein Serversteuerelement für die Eigenschaft, von der Sie das Attribut abrufen möchten? – Veverke

+0

@ Veverke: Nein, es ist kein Runat-Server – ron

Antwort

1

Wenn dies ein aspx ist, können Sie versuchen, dieses Element auf der Klasse als Schutzelement zu definieren:

protected string _myServerColor;

dann, dass prop zuweisen, wenn die Seite geladen wird:

protected void Page_Load(object sender, EventArgs e) { _myServerColor = "#FFF"; // assign this to your db color }

Und dann, solange Ihr style-Tag innerhalb der gleichen Seite ist, könnten Sie tun:

<style type="text/css"> 
     .item .item_background .item_general_info .button_wrapper .add_button { 

      background-color: "<%= _myServerColor %>"; 
     } 

    </style> 

sauberste Weg wäre, um diese steuert runat="server" so können Sie direkt Eigenschaften aus dem Backend zuweisen.

Grüße

0

Sie können von Code-Behind diese Weise einen Stil-Attribut zu Ihrem CSS-Style-Klasse hinzufügen:

Style style1 = new Style(); 
style1.BackColor = Color.Orange; // Insert the desired color here 
Header.StyleSheet.CreateStyleRule(style1, null, ".item .item_background .item_general_info .button_wrapper .add_button"); 

Damit das funktioniert, die head Abschnitt der Seite haben muss runat="server" Attribut:

<head runat="server"> 
    <style type="text/css"> 
     .item .item_background .item_general_info .button_wrapper .add_button 
     { 
      ... 
     } 
    </style> 
    ... 
</head> 
Verwandte Themen