fastreport中手册(翻译整理) (4)

仅是祈愿 分享 2020-06-30 下载文档

CustomOpenDialog 发生在报告设计器将显示“打开”对话框。 在事件处理程序中,你必须显示一个对话框,允许用户 选择一个报表文件。如果对话框已成功执行,你必须 返回e.Cancel = false和设置(e.FileName) 对选中的文件的文件名 的名字。 下面的例子演示了如何使用这个事件: private void CustomOpenDialog_Handler( object sender, OpenSaveDialogEventArgs e) { using (OpenFileDialog dialog = new OpenFileDialog()) { dialog.Filter = \ // set e.Cancel to false if dialog // was succesfully executed e.Cancel = dialog.ShowDialog() != DialogResult.OK; // set e.FileName to the selected file name e.FileName = dialog.FileName; } } CustomSaveDialog 发生在报告设计器将显示“保存”对话框。 在事件处理程序中,你必须显示一个对话框,允许用户 选择一个报表文件。如果对话框已成功执行,你必须 返回e。取消= false和设置e。对选中的文件的文件名 的名字。 下面的例子演示了如何使用这个事件: private void CustomSaveDialog_Handler( object sender, OpenSaveDialogEventArgs e) { using (SaveFileDialog dialog = new SaveFileDialog()) { dialog.Filter = \ // get default file name from e.FileName dialog.FileName = e.FileName; // set e.Cancel to false if dialog // was succesfully executed e.Cancel = dialog.ShowDialog() != DialogResult.OK; // set e.FileName to the selected file name e.FileName = dialog.FileName; } } CustomOpenReport 发生在报告设计器将载荷报告。在 事件处理程序,您必须指定加载报告在e报告 房地产从指定的位置在e。FileName属性。 这个 后者属性包含的名称被退回 CustomOpenDialog事件处理程序。 它可能是文件名, 数据库的键值,等等。 下面的例子演示了如何使用这个事件: private void CustomOpenReport_Handler( object sender, OpenSaveReportEventArgs e) { // load the report from the given e.FileName e.Report.Load(e.FileName); } CustomSaveReport 发生在报告设计器将保存报告。在 事件处理程序,您必须保存报告指定的e报告 属性指定的位置在e。FileName属性。 这个 后者属性包含的名称被退回 CustomSaveDialog事件处理程序。 它可能是文件名, 数据库的键值,等等。 下面的例子演示了如何使用这个事件: private void CustomSaveReport_Handler( object sender, OpenSaveReportEventArgs e) { // save the report to the given e.FileName e.Report.Save(e.FileName); }

更换标准进度窗口

这个进度窗口显示在以下操作: 1. 运行报告 2. 打印 3. 导出

你可以关掉进步通过设置ReportSettings。 ShowProgress财产的 EnvironmentSettings组件为false。 除此之外,你可能取代标准用你自己的进度窗口。要做到这一点,使用以下的事件

EnvironmentSettings组件(参见 “ 配置FastReport.Net 环境“部分): 事件 描述 StartProgress Progress FinishProgress 操作前发生一次。在这种情况下,您必须创建你的自己的进度窗口并显示它。 每次当电流发生报告页面处理。在这种情况下,你必须显示在你的窗口的步进状态。 操作后发生一次。在这种情况下,你必须摧毁进度窗口。

事件的进展需要e参数的ProgressEventArgs类型。 它具有以下属性:

属性 string Message int Progress int Total 描述 消息文本。 该索引 代表目前的报告页面处理的。 在一个报告总页数量。一份报告准备时这个参数可以是0,因为数量的页数是未知的。 在大多数情况下,你需要显示的文本从e.Message属性,在进步事件处理程序。其他参数可能是有用的,如果你想显示一个进度条。

传递自己的连接字符串

如果你使用数据源定义在一个报告中,你可能需要通过一个应用程序- 定义连接字符串的报告。这可以在三个方面做到。

第一个方法:你通过连接字符串直接连接对象在一个报告。 做到以下几点:

report1.Load(...);

// do it after loading the report, before running it // assume we have one connection in the report / /加载报告后,在运行前

/ /假设我们有一个连接在该报告

report1.Dictionary.Connections[0].ConnectionString = my_connection_string; report1.Show();

第二种方法:你通过连接字符串使用报告参数。做以下: 运行报表设计器·;

在“数据”·窗口,创建一个新报告参数(以“MyParameter”的名字,例)。见用户手册为更多的细节;

在“数据”·窗口,选择“连接”的对象,它包含一个数据来源;·切换到“属性”窗口,设置ConnectionStringExpression属性以下:

[MyParameter]

·通过连接字符串到MyParameter参数:

report1.SetParameterValue(\

private void environmentSettings1_DatabaseLogin( object sender, DatabaseLoginEventArgs e)

{

e.ConnectionString = my_connection_string; }

记住,DatabaseLogin事件是全球性的,它适用于所有的报告。

传递自定义SQL

该报告可能包含数据源添加使用数据向导(通过“数据|添加

数据来源??”菜单)。有时候是需要通过自定义SQL数据资料来源 您的应用程序。要做到这一点,使用以下代码:

using FastReport.Data; report1.Load(...);

// do it after loading the report, before running it // find the table by its alias

/ /加载报告后,在运行前 / /找到表的别名

TableDataSource table = report1.GetDataSource(\TableDataSource;

table.SelectCommand = \report1.Show();

报告对象引用

当你使用一个报告作为一个类(参见“存储一个报告和装载它”部分),你可参考报告对象直接。下面的示例演示了如何改变字体的“Text1”对象包含在报告: SimpleListReport report = new SimpleListReport(); report.Text1.Font = new Font(\

在其他情况下,您必须使用FindObject方法报告对象,如果你需要一个对象的引用:

DataSourceBase ds = report1.GetDataSource(\

通过使用代码创建一个报告

让我们考虑一下如何创建一个报告在代码中。我们将创建以下报告:

Report report = new Report();

// register the \

report.RegisterData(dataSet1.Tables[\ // enable it to use in a report

report.GetDataSource(\ // create A4 page with all margins set to 1cm ReportPage page1 = new ReportPage(); page1.Name = \ report.Pages.Add(page1); // create ReportTitle band

page1.ReportTitle = new ReportTitleBand(); page1.ReportTitle.Name = \ // set its height to 1.5cm

page1.ReportTitle.Height = Units.Centimeters * 1.5f; // create group header

GroupHeaderBand group1 = new GroupHeaderBand(); group1.Name = \

group1.Height = Units.Centimeters * 1; // set group condition

group1.Condition = \ // add group to the page.Bands collection page1.Bands.Add(group1); // create group footer

group1.GroupFooter = new GroupFooterBand(); group1.GroupFooter.Name = \

group1.GroupFooter.Height = Units.Centimeters * 1; // create DataBand

DataBand data1 = new DataBand(); data1.Name = \

data1.Height = Units.Centimeters * 0.5f; // set data source

data1.DataSource = report.GetDataSource(\ // connect databand to a group group1.Data = data1; // create \ // report title

TextObject text1 = new TextObject(); text1.Name = \ // set bounds

text1.Bounds = new RectangleF(0, 0,

Units.Centimeters * 19, Units.Centimeters * 1); // set text

text1.Text = \


fastreport中手册(翻译整理) (4).doc 将本文的Word文档下载到电脑

下一篇:从繁体字简化字- 香港圣柏斯专业学校

相关推荐
相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xxxxxx QQ:xxxxxx