XRLabel.Angle在运行时的应用

4
我正在使用DevExpress v.10.2,并希望在XtraReport上显示一个带有角度的XRLabel。如果我使用设计器,那么它可以正常工作。但是现在我想在运行时执行此操作,因为Label.Text是动态的。我的问题是报表没有显示我的标签。我阅读了一些DevExpress支持文章,描述说它只能在PDF格式上工作。但在我的情况下,我只看到一个小灰线。 我尝试了以下内容来填充我的XRLabel:
XRLabel druckinfo = new XRLabel();
druckinfo.Text = string.Format("SB{0} {1} EMAIL {2}", _Sachbearbeiter.Sbnr, _Kennung,
                _Sachbearbeiter.Email1); //The values are filled and working.
                druckinfo.Visible = true;
                druckinfo.AutoWidth = false;
                druckinfo.Angle = 90;
                druckinfo.Font = new Font("Arial", 6f);
                band.Controls.Add(druckinfo); //This is the DetailBand where i add other Labels too and its working fine.
                druckinfo.HeightF = 500f; //Setting Height very high, because the text turns and i thought this is working. But seems to have no effect :(
                druckinfo.LocationF = new PointF(400f, 400f);
                druckinfo.Borders = DevExpress.XtraPrinting.BorderSide.All;

如果我删除以下行:
druckinfo.Angle = 90;

这里是一张屏幕截图,展示了Label在PDF上的顶部设置:

enter image description here 这是我的报表设置:

 _Report.PaperKind = PaperKind.A4;
 _Report.ReportUnit = ReportUnit.HundredthsOfAnInch;
 _Report.ShowPrintMarginsWarning = false;
 _Report.Margins = new Margins(0, 0, 0, 0);

所有其他属性均为默认值。存在的带有以下内容:

页面页眉带 详细信息带 页面页脚带

问候


乍一看,您的代码看起来是正确的。您能分享整个报表定义(包括区域等)吗?可能这个问题与某些特定配置有关。 - Mikhail
@Mikhail 我修改了我的帖子 :) - Sebi
我从设计师那里复制了代码,现在逐步按照我的愿望进行调整。它可以正常工作 :) - Sebi
您可以发布一个新的答案并接受它以关闭此问题。 - Mikhail
1个回答

3

看起来这个方法有效!我不确定为什么这个方法有效而我的其他帖子不行。但是我复制了由设计师生成的代码,现在它可以工作了。

XRLabel druckinfo = new XRLabel();
druckinfo.Angle = 90F;
druckinfo.Padding = new PaddingInfo(2, 2, 0, 0, 96F);
druckinfo.SizeF = new SizeF(29.16666F, 500F);
druckinfo.Font = new Font("Arial",8f);
druckinfo.Text = text;
_Band.Controls.Add(druckinfo);
druckinfo.LocationF = new PointF(0F, 500F);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接