报表生成器FastReport .NET是适用于.NET Core 3,ASP.NET,MVC和Windows窗体的全功能报告库。使用FastReport .NET,您可以创建独立于应用程序的.NET报告。 点击下载最新版FastReport .Net
一些用户更喜欢通过调整选项卡宽度来创建表格,或者他们想要以不支持它们的格式创建表格。
在以前的 FastReport .NET 版本中,RichObject 提供了修改一行中一个选项卡宽度的功能,但它们在第一个选项卡之后的所有大小都是相同的。这已在当前版本中修复,现在您可以设置每个制表符的大小。
TextObject TabPositions 的新属性允许您设置选项卡的宽度。它在转换 RichObject 时使用。现在您可以通过两种方式控制制表符的宽度:
- 从代码中为 TextObject 的每一行设置单个制表符的宽度;
- 通过将完成的文档上传到 RichObject。
在设计器中编辑该属性的功能暂时不可用。如果制表符比宽度多,则制表符大小将是正常的,如果值比制表符多,则不会应用宽度超出的值。
具有不同制表符宽度的文本示例
原始 RTF 文件:

它在以前的版本中的样子:

在当前版本中:

从代码自定义标签宽度:
//create instance of class Report
Report report = new Report();
//create report page
ReportPage pageBase = new ReportPage();
//create data band
DataBand dataBand = new DataBand();
//create text object
TextObject textObject = new TextObject();
//set the text value
textObject.Text = "1\t2\t3\t4";
//set width for every symbol tab in centimeters
textObject.TabPositions = new FloatCollection() { Units.Centimeters * 2.5f, Units.Centimeters * 3.5f, Units.Centimeters * 5 };
//add the text object to data band
textObject.Parent = dataBand;
//set generated name
textObject.CreateUniqueName();
//set the text object bounds
textObject.Bounds = new RectangleF(0, 0, Units.Centimeters * 15, Units.Centimeters * 0.5F);
//create one more text object
TextObject textObject2 = new TextObject();
textObject2.Text = "5\t6\t7\t8";
textObject2.TabPositions = new FloatCollection() { Units.Centimeters * 2.5f, Units.Centimeters * 3.5f, Units.Centimeters * 5 };
textObject2.Parent = dataBand;
textObject2.CreateUniqueName();
textObject2.Bounds = new RectangleF(0, Units.Centimeters * 1, Units.Centimeters * 15, Units.Centimeters * 0.5F);
//create one more text object
TextObject textObject3 = new TextObject();
textObject3.Text = "9\t10\t11\t12";
textObject3.TabPositions = new FloatCollection() { Units.Centimeters * 2.5f, Units.Centimeters * 3.5f, Units.Centimeters * 5 };
textObject3.Parent = dataBand;
textObject3.CreateUniqueName();
textObject3.Bounds = new RectangleF(0, Units.Centimeters * 2, Units.Centimeters * 15, Units.Centimeters * 0.5F);
//add the band to band collection
pageBase.Bands.Add(dataBand);
//add created page to report page collection
report.Pages.Add(pageBase);
//show report
report.Show();
因此,您可以借助新的改进将 RichObject 和 TextObject 变成 Table 对象的替代品。
Fastreport.NET在线购买价更低!赶紧加入购物清单吧!
如果您有任何疑问或需求,请随时加入FastReport技术交流群(702295239),我们很高兴为您提供查询和咨询。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:FastReport控件中文网 [https://www.fastreportcn.com/]
本文地址:https://www.fastreportcn.com/post/3196.html
联系电话:023-68661681

返回