2016-08-04 13 views
0

Ich möchte den Stil/das Thema meines Berichts basierend auf dem Benutzer ändern.
Alle meine Benutzer haben eine UserGroup. Meine UserGroup hat einen benutzerdefinierten Stil.
All diese Informationen sind in der DB.
UserStyle: ID | ID Benutzergruppe | LOGO | Stil 1 | Farbe 1 | ect ..Ändern Sie den Stil dynamisch.

Ich möchte meinen Berichtsstil mit diesen Informationen ändern.
Ich weiß, dass es möglich ist, meinem Artikel einen Style-Namen zu geben.
Aber kann ich es im Hauptbericht Code dahinter definieren.

Bonus: Kann ich das nur einmal für den Hauptbericht tun?

Grundsätzlich Stilnamen als CssClass verwenden.

+0

Haben Sie über eine Sitzung und JS mit Ihnen CSS gedacht? so effektiv ich meine, was Sie möglicherweise tun können, ist bei der Anmeldung, beginnt Ihre Sitzung, so dass der Benutzer sich anmeldet. Wenn sie sich einloggen, je nach Benutzer z. Sagen wir mal, wenn der Benutzer "Admin" eine Hintergrundfarbe von rot hat, dann könnten Sie in js etwas wie .AddClass -Eigenschaft in der gewünschten Klasse hinzufügen, wenn der Benutzer sich anmeldet? ODER vielleicht aktualisieren Sie die CSS abhängig vom Benutzer? es ist sicher möglich. –

+0

Ich habe bereits das CSS in meiner Masterseite bei Page_Load bearbeitet. Ich habe einfach keine Ahnung, wie man Css oder Stil allgemein in einem Telerik-Bericht anwendet. Ich weiß, wie man ein Element style, aber es wird nur für dieses Element ich habe 1 Hauptbericht mit 23 Unterbericht. Es ist wie 200+ Element zu manueller Stil. Iam sucht nach einem generischen Weg, um den Stil/das Thema zu behandeln. Und ich möchte es im Code hinter tun. Weil 'stylename' (die kindische CSS-Klasse) keine Ausdrücke akzeptiert. –

Antwort

0

2. Der Designer GUI

  1. Entwurf all style rules
  2. Export mit ihnen. Exporting and Reusing Style Sheets

Sie können sie in Ihrem Code binden hinter, auf einem Parameter zu filtern.
Oder fügen Sie sie einfach in Ihre Anruf-Apps ein.

0

1. Der Programmierer Lösung

Wenn Sie eine Abneigung für die GUI haben, ist dies für Sie gemacht!

Die 1rst ist die schlimmsten, aber die 1rst Arbeit um ich kam mit.

Stil in einem Telerik-Bericht kann in einem StyleRules definiert werden.
Um das Thema basierend auf dem Benutzer zu verwalten, können Sie einen ReportParameter verwenden.

Telerik.Reporting.Drawing.StyleRule styleRule1 = new Telerik.Reporting.Drawing.StyleRule(); 
styleRule1.Selectors.AddRange(new Telerik.Reporting.Drawing.ISelector[] { 
new Telerik.Reporting.Drawing.StyleSelector("MyStyle")}); 

if(reportParameter1.Value == "StyleUser1") 
{ 
    styleRule1.Style.Padding.Left = Telerik.Reporting.Drawing.Unit.Point(2D); 
    styleRule1.Style.Padding.Right = Telerik.Reporting.Drawing.Unit.Point(2D); 
    styleRule1.Style.BackgroundColor = System.Drawing.Color.Blue; 
    styleRule1.Style.Color = System.Drawing.Color.White; 
    styleRule1.Style.Font.Bold = true; 
    styleRule1.Style.Font.Name = "Segoe UI"; 
} 
else { 
    //default style 
} 

Sie können den Artnamen Sie Element vom Designer oder aus dem Konstruktor hinzuzufügen.
auf diese Weise:

this.textBox2.StyleName = "MyStyle"; 

Sie können Ihre Stilregeln im Designer erstellen und nur den Stil auf die Komponente in Ihrem Initialise Komponente zuweisen.

if(reportParameter1.Value == "StyleUser1") 
{ 
    this.textBox1.StyleName = "MyStyle"; 
    this.textBox2.StyleName = "MyStyle"; 
    this.textBox3.StyleName = "MyStyle"; 
} 
else { 
    //default style 
} 


Verwandte Themen