本指南演示了如何创建自定义 Ribbon 预览窗体。 要获得相关的总说明,请参阅 创建自定义打印预览。
注意 |
---|
因为此功能基于 RibbonControl 组件,因此除了 XtraReports 套件之外,您还需要购买 XtraBars 套件。 |
要创建一个自定义 Ribbon 预览窗体,则执行下列操作。
-
启动 MS Visual Studio (2005、2008 或 2010),并且新建一个或者打开一个现有的 Windows 窗体应用程序。
-
添加新空白报表 到项目中。 此外,由于报表必须包含至少一个控件来呈现其预览,因此要添加一些控件到报表中。
-
添加一个新的 RibbonForm ("DevExpress RibbonForm v10.2") 到项目中。 注意,使用 RibbonForm 来替代标准的 Form 会更好,这是因为 RibbonForm 是专门设计用于显示 RibbonControl 的。
然后,Ribbon 窗体被添加到项目中。 注意,它已经包含 RibbonControl 和 RibbonStatusBar 组件,并提供了 Ribbon 应用程序按钮 和 Ribbon 快速访问工具栏 元素。 要获得更多关于使用 RibbonForm 类的信息,请参阅 Ribbon 窗体 文档。
-
把 PrintRibbonController 项从工具箱中拖放到窗体上 (在默认情况下,该项被添加到 Visual Studio IDE 的 DX.10.2: Reporting 工具箱标签页中)。 在此操作之后,打印预览 Ribbon 页面 被自动创建,并且 PrintControl 被添加到此页面中。
注意,新创建的 PrintControl 实例被自动指派到 PrintRibbonController.PrintControl 属性。
-
现在,自定义 Ribbon 打印预览窗体已经备用。 把 PrintingSystem 组件添加到项目中,并确保它的 PrintControl.PrintingSystem 属性值被设置为 printingSystem1。
-
在 Ribbon 窗体的 Load 事件处理程序中编写下列代码。
C# 复制代码 using System; using System.Windows.Forms; using DevExpress.XtraBars; // ... private void RibbonForm1_Load(object sender, EventArgs e) { // Create an XtraReport1 instance. XtraReport1 report = new XtraReport1(); // Specify the PrintingSystem of the printControl1. printControl1.PrintingSystem = report.PrintingSystem; // Generate the document for preview. report.CreateDocument(); }
Visual Basic 复制代码 Imports System Imports System.Windows.Forms Imports DevExpress.XtraBars ' ... Private Sub RibbonForm1_Load(ByVal sender As Object, _ ByVal e As EventArgs) Handles MyBase.Load ' Create an XtraReport1 instance. Dim report As New XtraReport1() ' Specify the PrintingSystem of the printControl1. printControl1.PrintingSystem = report.PrintingSystem ' Generate the document for preview. report.CreateDocument() End Sub
-
最后,显示 Ribbon 窗体。
C# 复制代码 using System; using System.Windows.Forms; // ... private void Form1_Load(object sender, EventArgs e) { RibbonForm1 form = new RibbonForm1(); form.Show(); }
Visual Basic 复制代码 Imports System Imports System.Windows.Forms ' ... Private Sub Form1_Load(ByVal sender As Object, _ ByVal e As EventArgs) Handles MyBase.Load Dim form As New RibbonForm1() form.Show() End Sub
运行应用程序,并查看结果。