报表开发工具FastReport.NET的五大常见问题及解决方法

Fastreport是目前世界上主流的图表控件,具有超高性价比,以更具成本优势的价格,便能提供功能齐全的报表解决方案,连续三年蝉联全球文档创建组件和库的“ Top 50 Publishers”奖。

FastReport.NET官方版下载(qun:536197826)icon-default.png?t=MBR7https://www.evget.com/product/1861/download

上一篇我们了解到了在使用FastReport .Nets十大常见问题及解决办法,今天我们继续讨论常常遇到的5个问题及解决方法。

问题1:如何从代码继承报告?

1.需要您创建新报告:

Report report = new Report();

2.添加 CustomLoadEventHandler 加载基础报表:

report.LoadBaseReport += new CustomLoadEventHandler(FReport_LoadBaseReport); 

3.加载继承报表:

report.Load("InheritReport.frx"); 

4.删除CustomLoadEventHandler:

report.LoadBaseReport -= new CustomLoadEventHandler(FReport_LoadBaseReport); 

5.您可以显示报告或编辑报告,报告有基础报告和继承报告:

report.Show(); 

同时还需要创建加载基础报告的事件:

private void FReport_LoadBaseReport(object sender, CustomLoadEventArgs e) 
{ 
// e.FileName contains the name of base report. It may be the file name, or an ID in the database, 
// it depends on how you load the main report 
e.Report.Load("C:\\Users\\InheritReport\\bin\\Debug\\Title2.frx"); 
}  

完整的代码

public partial class Form1 : Form
 {
 public Form1()
 {
 InitializeComponent();
 }
 
 private void Form1_Load(object sender, EventArgs e)
 {
 Report report = new Report();
 report.LoadBaseReport += new CustomLoadEventHandler(FReport_LoadBaseReport);
 report.Load("InheritReport.frx");
 report.LoadBaseReport -= new CustomLoadEventHandler(FReport_LoadBaseReport);
 
 report.Show();
 }
 
 private void FReport_LoadBaseReport(object sender, CustomLoadEventArgs e)
 {
 // e.FileName contains the name of base report. It may be the file name, or an ID in the database,
 // it depends on how you load the main report
 e.Report.Load("C:\\Users\\InheritReport\\bin\\Debug\\Title2.frx");
 }
 }

如果要从数据库加载报告,请替换 LoadFromString() 上的 Load() 方法。

问题2:如何删除最终用户的代码选项卡?

将“EnvironmentSettings”控件添加到您的表单。 
然后在调用 report.Design() 之前添加以下行:

environmentSettings1.DesignerSettings.Restrictions.DontEditCode = true;

这样数据控件将被禁用。

问题3:如何在WPF应用程序中使用FastReport.Net控件?

您应该为它使用 WindowsFormsHost 控件:
0) 添加对FastReport.dll的引用;
1) 添加属性到Window(Page) 标签: xmlns:fr="clr-namespace:FastReport.Preview;assembly=FastReport" 如果你想使用PreviewControl, xmlns:fr1="clr-namespace:FastReport.Design;assembly= FastReport" - 如果是 DesignerControl;

2) 将 WindowsFormsHost 标记添加到您的 XAML 标记中:

<WindowsFormsHost  Horizo ntalAlignment = "Stretch"  VerticalAlignment = "Stretch"  Grid.Column = "0"  Grid.ColumnSpan = "3" > 
</WindowsFormsHost > 

3) 将子项添加到 WindowsFormsHost 中:<fr:PreviewControl></fr:PreviewControl> 或 <fr1:Designer></fr1:Designer>。

完整标记应类似于以下代码段:

<Window
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
 x:Class="WpfApplication1.MainWindow"
 Title="MainWindow" Height="375.977" Width="939.258"
 xmlns:fr="clr-namespace:FastReport.Preview;assembly=FastReport">
 <Grid>
 <Grid.ColumnDefinitions>
 <ColumnDefinition Width="*"/>
 <ColumnDefinition Width="*"/>
 <ColumnDefinition Width="*"/>
 </Grid.ColumnDefinitions>
 <WindowsFormsHost HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Column="0" Grid.ColumnSpan="3">
 <fr:PreviewControl></fr:PreviewControl>
 </WindowsFormsHost>
 </Grid>
</Window>

问题4:如何以编程方式设置格式的值

您可以使用以下代码在脚本或项目中执行此操作:

FastReport.Format.NumberFormat format = new FastReport.Format.NumberFormat(); format.UseLocale = false; format.DecimalDigits = 2; format.DecimalSeparator = "."; format.GroupSeparator = ",";

接下来:

textObject.Formats.Clear(); textObject.Formats.Add(format);

问题5:如何在MSChartObject中创建一条有间隙的线?

您应该创建基础 System.Windows.Forms.DataVisualization.Charting.Series 对象并在那里创建行。在此之后应该为 MSChartObject 基本图表分配创建的系列(MSChart1.Chart.Series.Add(系列);)不要忘记 在 Report -> Script 菜单和命名空间 System.Windows.Forms 中添加 System.Windows.Forms.DataVisualization.dll .DataVisualization.Charting。
带间隙的线示例:

.
.
using System.Windows.Forms.DataVisualization.Charting;
 
namespace FastReport
{
 public class ReportScript
 {
 private void MSChart1_BeforePrint(object sender, EventArgs e)
 { 
 Series series = new Series("sample");
 series.ChartType = SeriesChartType.Line;
 series.BorderWidth = 2;
 series.MarkerSize = 5;
 
 series.Points.Add(new DataPoint(0, 1));
 series.Points.Add(new DataPoint(1, 2));
 DataPoint dp = new DataPoint(2, double.NaN);
 dp.IsEmpty = true;
 series.Points.Add(dp);
 series.Points.Add(new DataPoint(3, 5));
 series.Points.Add(new DataPoint(4, 8)); 
 
 MSChart1.Chart.Series.Add(series);
 
 }
 }
}

关于“FastReport .NET五大常见问题的讲解就到这里了,点击查看上一章常见问题解答:FastReport .Nets十大常见问题及解决办法

如您有更多相关问题,欢迎进入FastReport中文网获取更多授权、教程等资源。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: fastreport.net是一种强大的报表生成工具,用于快速和灵活地创建各种类型的报表。它提供了丰富的功能和易于使用的接口,使开发人员能够轻松地生成高质量的报告。 fastreport.net的开发手册是一个详细的指南,旨在帮助开发人员学习和理解该工具的使用。手册提供了关于fastreport.net的完整文档和示例代码,涵盖了各种报表生成和编辑的方面。 手册首先介绍了fastreport.net的基础知识和概念,包括报表对象、数据源、报表模板和操作等。然后,它逐步介绍了报表的设计和布局,包括页面设置、页眉页脚、表格、图表和文本等元素的使用。 接下来,手册深入介绍了报表中的数据源和数据集,讲解了如何连接数据库、查询数据和绑定数据到报表中。它还介绍了如何使用参数和过滤器来自定义报表的数据展示和筛选。 此外,手册还详细介绍了报表中的各种功能和操作,如排序、分组、计算字段、条件格式、子报表和导出等。它提供了丰富的示例代码和详细的说明,帮助开发人员更好地理解和应用这些功能。 总的来说,fastreport.net的开发手册是一个非常有价值的资源,可以帮助开发人员更好地利用该工具进行报表开发。通过学习手册中的内容,开发人员可以快速掌握fastreport.net的使用技巧,从而有效地生成定制化的报告。 ### 回答2: FastReport.net是一个用于生成报表.NET开发工具。它提供了丰富的报表设计和生成功能,可以帮助开发人员轻松地创建各种格式的报表,如PDF、Excel、Word等。这个开发手册为开发人员提供了详细的技术文档和示例代码,帮助他们快速上手使用FastReport.net。 这本开发手册从基础知识开始介绍,首先介绍了FastReport.net的安装和配置过程,以及常用的报表设计工具和功能。然后,它详细介绍了报表的数据源和数据连接,包括使用SQL查询、ADO.NET、实体框架等方式获取数据,并将其绑定到报表中。 接下来,开发手册介绍了报表的设计和布局,包括如何添加数据字段、文本框、图片等控件,并进行格式设置和样式调整。它还介绍了如何使用表格、图表和子报表来展示复杂的数据内容,并对报表进行分组和排序。 此外,开发手册还详细介绍了报表的导出和打印功能。它阐述了如何将报表导出为PDF、Excel、Word和图像格式,以及如何通过打印预览和打印设置调整报表的输出。同时,它还提供了对报表进行自定义和扩展的方法和技巧,如使用脚本、定制样式和布局等。 总的来说,这本FastReport.net开发手册提供了全面的指导和参考,帮助开发人员快速掌握和应用FastReport.net报表开发工具。无论是初学者还是有经验的开发人员,都可以通过这本手册来深入了解FastReport.net的技术细节和开发思路,提高报表设计和生成的效率和质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值