我想根据用户更改我的报告的风格/主题。
我的所有用户都有一个UserGroup。我的UserGroup具有自定义样式。
所有这些信息都在数据库中。
UserStyle:ID | ID UserGroup | LOGO |样式1 |颜色1 |等..动态更改样式。
我想改变我的报告风格与这些信息。
我知道可以给我的项目一个样式名称。
但我可以在主报告代码后面定义它。
奖励:我可以为主报告只做一次吗?
基本上使用样式名称作为CssClass。
我想根据用户更改我的报告的风格/主题。
我的所有用户都有一个UserGroup。我的UserGroup具有自定义样式。
所有这些信息都在数据库中。
UserStyle:ID | ID UserGroup | LOGO |样式1 |颜色1 |等..动态更改样式。
我想改变我的报告风格与这些信息。
我知道可以给我的项目一个样式名称。
但我可以在主报告代码后面定义它。
奖励:我可以为主报告只做一次吗?
基本上使用样式名称作为CssClass。
你可以在后面的代码约束他们,在参数过滤。
或者只是将它们添加到您的通话应用程序。
如果您对GUI的反感,这是为你而造!
的1RST是最差,但1RST工作,我身边来了。
telerik报告中的样式可以在StyleRules中定义。
为了基于用户管理主题,您可以使用ReportParameter。
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
}
您可以从设计师或构造函数中为您添加样式名称。
这样:
this.textBox2.StyleName = "MyStyle";
您可以在设计师的创造自己的风格规则,只分配的样式组件在INITIALISE组件。
if(reportParameter1.Value == "StyleUser1")
{
this.textBox1.StyleName = "MyStyle";
this.textBox2.StyleName = "MyStyle";
this.textBox3.StyleName = "MyStyle";
}
else {
//default style
}
你有没有想过使用会话,并与你的JS CSS?所以我的意思是说你可以做的是在登录时,你的会话开始以便用户登录,当他们登录时,取决于用户,例如,可以说,如果用户“Admin”具有红色的背景颜色,那么您可以在js中执行类似.AddClass属性的操作,以在用户登录时添加到您想要的类中?或者也许更新的CSS取决于用户?这是可以肯定的。 –
我已经在Page_Load的主页中处理了Css。 我只是不知道如何在telerik报告中应用CSS或风格。 我知道如何设计一个元素,但它只是针对这个元素,我有一个包含23个子报告的主要报告。它像200+元素,以手动风格。 Iam寻找一种通用的方式来处理风格/主题。 我想在代码后面做。因为'stylename'(有趣的css类)不接受表达式。 –