XtraReports的设计器可以作为给终端用户使用的独立的报表设计器, 也就是说用户可以自己编辑,预览,甚至创建报表. 这个设计器和Visual Studio的集成开发环境很象, 可以定制外观, 满足用户的需要. 甚至, 你可以自己创建报表设计器, 因为在XtraReport中设计器是一个分开独立的控件.
先介绍一下设计器的组成元件. 报表设计器主要是用于使用户可以编辑报表. 标准的设计器是使用XRDesignFormEx类来展示的, 这个类提供了编辑和创建报表的主要功能.
下图是一个标准的报表设计器:
这个Form里包含了不同的元件: 报表在XRDesignPanel对象中被编辑, 其他工具栏和停靠面板由XRDesignBarManager和XRDesignDockManager控制. 所有的这些控件都可以通过设计Form的XRDesignFormExBase.DesignPanel, XRDesignFormEx.DesignBarManager和XRDesignFormEx.DesignDockManager属性来操作.
下面列举了设计器中使用的元件接口.
激活报表设计器: 尽管报表设计器是XRDesignFromEx的实例, 但一般不需要手工创建此对象. 通常使用以下代码:
先介绍一下设计器的组成元件. 报表设计器主要是用于使用户可以编辑报表. 标准的设计器是使用XRDesignFormEx类来展示的, 这个类提供了编辑和创建报表的主要功能.
下图是一个标准的报表设计器:
![](http://www.devexpress.com/Help/XtraReports/img/EndUserDesigner%20-%20EUDElementspng.png)
这个Form里包含了不同的元件: 报表在XRDesignPanel对象中被编辑, 其他工具栏和停靠面板由XRDesignBarManager和XRDesignDockManager控制. 所有的这些控件都可以通过设计Form的XRDesignFormExBase.DesignPanel, XRDesignFormEx.DesignBarManager和XRDesignFormEx.DesignDockManager属性来操作.
下面列举了设计器中使用的元件接口.
Element | Description |
---|---|
Design Panel | 这是报表设计器的主要元件. 它展示了一个面板用于创建一个新的报表或者编辑原有的报表. 它显示报表带并控制报表带中控件的归属, 并可以移动, 缩放, 复制, 粘贴这些控件, 另外还可以在控件上绑定数据, 或者进行其他的操作. 而且可以预览报表效果. |
Main Menu | 展示报表设计器的主菜单. 包含了一系列的项目和子项目, 用于为用户提供相关操作. 通常, 它复制所有的ToolBar按钮, 格式化按钮以及布局按钮. |
Main Toolbar | 展示报表设计器的ToolBar. 包含创建报表, 保存装载报表布局, 剪裁,复制,粘贴等按钮, 以及撤销, 重做等操作. |
Formatting Toolbar | 展示报表设计器的格式化Toolbar. 包含一些缺省的操作文本的按钮. |
Layout Toolbar | 展示报表设计器的布局Toolbar. 包含缩放, 移动一组控件位置的按钮. |
Status Bar | 在报表设计器底部展示StatusBar. 通常用于显示报表编辑操作过程中的特殊信息. |
Toolbox | 展示报表设计器的控件工具箱. 包含所有报表控件, 可以拖放新的控件到报表区中. 可以添加自定义控件到工具箱中. |
Report Explorer | 展示报表设计器的Explorer. 它显示了报表树状结构, 使用它可以很方便地浏览整个报表. |
Field List | 展示了报表设计器的树状字段列表. 显示了数据源的树状结构. 用于将数据绑定到报表. |
Property Grid | 展示报表设计器的属性容器. 可以修改报表元件的属性. |
激活报表设计器: 尽管报表设计器是XRDesignFromEx的实例, 但一般不需要手工创建此对象. 通常使用以下代码:
//
Create a new report.
XtraReport1 report = new XtraReport1();
// Invoke the End-User Designer and load the report into it.
report.ShowDesigner();
// Invoke the End-User Designer and load the report into it, modally.
report.ShowDesignerDialog();
XtraReport1 report = new XtraReport1();
// Invoke the End-User Designer and load the report into it.
report.ShowDesigner();
// Invoke the End-User Designer and load the report into it, modally.
report.ShowDesignerDialog();