报表生成器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