在本节中,将学习如何为 CrystalReportViewer 工具栏的“转到页”选项编写代码。
CrystalReportViewer 工具栏有用于选择报表页面的页面导航按钮和文本框。可从 CrystalReportViewer 类中使用以下方法手工编写用于页面选择的代码:
- ShowFirstPage()
- ShowLastPage()
- ShowNextPage()
- ShowNthPage(int PageNumber)
- ShowPreviousPage()
当调用其中一种方法时,就会为当前报表显示选定的页面。
为“转到页”选项添加 TextBox 和 Button 控件
- 在“设计”视图中打开 Web 或 Windows 窗体。
- 从“工具箱”中将一个“TextBox”控件拖到表的第四行第一列中。
- 选择“TextBox”控件,然后从“属性”窗口执行以下操作:
- 将“ID”(或“Name”)设置为“pageNumber”。
- 将“Text”属性设置为空白。
- 从“工具箱”中将一个“Button”控件拖到表的第四行第二列中。
- 选择“Button”控件,然后从“属性”窗口执行以下操作:
- 将“ID”(或“Name”)设置为“goToPage”。
- 将“Text”设置为“转到页”。
为 Button 控件的 Click() 事件处理程序编写代码
- 双击转到页 Button 控件。
即会出现报表的代码隐藏类,显示已经自动生成 goToPage\_Click() 事件处理程序。
把在“TextBox”控件中键入的文本转换为整数,然后将该值传递到“CrystalReportViewer”控件的 ShowNthPage() 方法。
注意您尚未确认是否在 TextBox 控件中输入了整数。对于生产性应用程序,可以添加针对 TextBox 控件配置的确认控件。
myCrystalReportViewer.ShowNthPage(Convert.ToInt32(pageNumber.Text))crystalReportViewer.ShowNthPage(Convert.ToInt32(pageNumber.Text));
测试 goToPage 按钮控件
从“生成”菜单中选择“生成解决方案”。
如果生成过程中出错,请立即纠正。
从“调试”菜单中,单击“开始”。
即会显示图表报表以及已添加的所有控件。
在“pageNumber TextBox”中输入“3”,然后单击“转到页”。
页面会重新加载,显示报表的第 3 页。
返回到 Visual Studio,然后单击“停止”从调试模式中退出。