表生成器FastReport.Net常见问题解答(二)

Fastreport.NET在线购买价更低,专享85折起!赶紧加入购物清单吧!

1.如何在WPF应用程序中使用FastReport.Net控件/span>

您应该为此使用WindowsFormsHost控件:

0)在FastReport.dll上添加引用;

1)如果要使用PreviewControl,则将属性添加到Window(Page)标记中:xmlns:fr =“ clr-namespace:FastReport.Preview; assembly = FastReport”,xmlns:fr1 =“ clr-namespace:FastReport.Design; assembly = FastReport”-if DesignerControl;

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

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

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

完整的标记应如下所示:

<Window  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>

2.如何以编程方式设置Format的值/span>

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

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);

3.如何在MSChartObject中创建带有间隙的行/span>

您应该创建基本的System.Windows.Forms.DataVisualization.Charting.Series对象,并在此处创建行。之后,应为MSChartObject基本图表分配创建的系列(MSChart1.Chart.Series.Add(series);)不要忘记在“ 表”->“脚本”菜单和命名空间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); } }}

结果:

1.创建新的MSChart对象,设置宽度,高度和图例:

 MSChartObject MSChart1 = new MSChartObject(); MSChart1.Width = 300; MSChart1.Height = 300; MSChart1.Chart.Legends.Add(new Legend() { Name = "Legend1", Title="Legend title"});

 2.创建ChartArea对象,设置名称,轴标题,并将创建的ChartArea分配给MSChart:

 ChartArea chartArea1 = new ChartArea(); chartArea1.Name = "ChartArea1"; chartArea1.Axes[0].Title = "X name"; chartArea1.Axes[1].Title = "Y name"; MSChart1.Chart.ChartAreas.Add(chartArea1);

3.创建系列对象,设置图表类型,边框宽度,添加点并将系列分配给图表:

 Series series = new Series("sample"); series.ChartType = SeriesChartType.Line; series.BorderWidth = 2; series.Points.Add(new DataPoint(0, 1)); series.Points.Add(new DataPoint(1, 2)); series.Points.Add(new DataPoint(3, 5)); series.Points.Add(new DataPoint(4, 8)); MSChart1.Chart.Series.Add(series);

 4.将创建的MSChart分配给DataBand:

Report report = new Report();report.Load("ok.frx");DataBand db = report.FindObject("Data1") as DataBand;MSChart1.Parent = db;

完整的代码段:

 MSChartObject MSChart1 = new MSChartObject(); MSChart1.Width = 300; MSChart1.Height = 300; MSChart1.Chart.Legends.Add(new Legend() { Name = "Legend1", Title="Legend title"}); ChartArea chartArea1 = new ChartArea(); chartArea1.Name = "ChartArea1"; chartArea1.Axes[0].Title = "X name"; chartArea1.Axes[1].Title = "Y name"; MSChart1.Chart.ChartAreas.Add(chartArea1); Series series = new Series("sample"); series.ChartType = SeriesChartType.Line; series.BorderWidth = 2; series.Points.Add(new DataPoint(0, 1)); series.Points.Add(new DataPoint(1, 2)); series.Points.Add(new DataPoint(3, 5)); series.Points.Add(new DataPoint(4, 8)); MSChart1.Chart.Series.Add(series); Report report = new Report(); report.Load("ok.frx"); DataBand db = report.FindObject("Data1") as DataBand; MSChart1.Parent = db;

 结果:

 表生成器FastReport.Net常见问题解答(二)

还想要更多吗可以点击阅读【FastReport 表2020最新资源盘点】查找需要的教程资源。让人兴奋的是FastReport .NET正在 火热销售中!17周年庆惠享超低折扣,低至3701元起!>>查看价格详情


标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月4日
下一篇 2021年1月4日

相关推荐

发表回复

登录后才能评论