水晶报表在vs2010 WPF环境下的尝试
2011-11-28 10:03
190 查看
由于VS2010没有集成水晶报表组件,尝试前必须先安装 水晶报表 for VS2010,若机器未安装的可点击这里>>>下载安装
新建一个WPF应用程序项目,此时我们先修改一个项目属性,右击项目名->属性,“目标框架”务必改成".Net Framework4"(默认是".Net Framework 4 Client Profile"),否则会报错。
打开窗体设计器后,工具栏并未出现CrystalReportViewer控件,所以我们必须先手动添加这些控件,可在工具栏新建一选项卡,然后右击,“选择项”,如图示
筛选出SAPBusinessObjects的组件勾选后添加到工具箱,此时我们新建的选项卡便出现了CrystalReportViewer控件,我在MainWindow窗体放置了一个按钮btnReport和crystalReportViewer控件
接下来我们为水晶报表准备数据源,在项目添加一个数据集DataSet1.xsd,添加一个数据表DataTable1,我在DataTable1添加两列(String型与Int32型),数据源准备好了,在项目添加水晶报表RPT文件,将DataSet1设为其数据源,如图示
水晶报表for VS2010比之前vs内置的水晶报表多了一些特性,比如在设计模板,对象就多了一个格式刷功能,如图示
它可以将指定对象的格式应用到其他对象,只需在指定对象先获取其格式刷,然后将鼠标移到其他对象上时,鼠标形状会自动变成一个刷子形状,单击一下,该对象便与指定对象的格式完全一致,非常便利。这只是其中之一,还有其他一些特性待我们好好研究
模板设计好了,接下来进入代码
点击运行,呀!报错了,如图示
解决方案可参考我之前写的这篇:/article/8569478.html
处理后再点击运行,好了,运行效果如下
新建一个WPF应用程序项目,此时我们先修改一个项目属性,右击项目名->属性,“目标框架”务必改成".Net Framework4"(默认是".Net Framework 4 Client Profile"),否则会报错。
打开窗体设计器后,工具栏并未出现CrystalReportViewer控件,所以我们必须先手动添加这些控件,可在工具栏新建一选项卡,然后右击,“选择项”,如图示
筛选出SAPBusinessObjects的组件勾选后添加到工具箱,此时我们新建的选项卡便出现了CrystalReportViewer控件,我在MainWindow窗体放置了一个按钮btnReport和crystalReportViewer控件
接下来我们为水晶报表准备数据源,在项目添加一个数据集DataSet1.xsd,添加一个数据表DataTable1,我在DataTable1添加两列(String型与Int32型),数据源准备好了,在项目添加水晶报表RPT文件,将DataSet1设为其数据源,如图示
水晶报表for VS2010比之前vs内置的水晶报表多了一些特性,比如在设计模板,对象就多了一个格式刷功能,如图示
它可以将指定对象的格式应用到其他对象,只需在指定对象先获取其格式刷,然后将鼠标移到其他对象上时,鼠标形状会自动变成一个刷子形状,单击一下,该对象便与指定对象的格式完全一致,非常便利。这只是其中之一,还有其他一些特性待我们好好研究
模板设计好了,接下来进入代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; namespace WpfApplication1 { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { /// <summary> /// 水晶报表“骨架” /// </summary> DataSet1 myDataSet = new DataSet1( ); public MainWindow( ) { InitializeComponent( ); } protected override void OnInitialized( EventArgs e ) { base.OnInitialized( e ); //往数据集塞数据 myDataSet.DataTable1.AddDataTable1Row( "Luols" , 1 ); myDataSet.DataTable1.AddDataTable1Row( "Luols" , 2 ); myDataSet.DataTable1.AddDataTable1Row( "Luols" , 3 ); } /// <summary> /// 报表预览 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnReport_Click( object sender , RoutedEventArgs e ) { CrystalReport1 myReport = new CrystalReport1( ); myReport.SetDataSource( myDataSet ); //这里与之前版本有区别 //之前是 crystalReportsViewer1.ReportSource = myReport crystalReportsViewer1.ViewerCore.ReportSource = myReport; } } }
点击运行,呀!报错了,如图示
解决方案可参考我之前写的这篇:/article/8569478.html
处理后再点击运行,好了,运行效果如下
相关文章推荐
- 水晶报表在vs2010 WPF环境下的尝试
- 在WPF中使用水晶报表for vs2010的方法
- WPF项目中使用水晶报表for vs2010时的一个找不到程序集的问题
- WPF项目中使用水晶报表for vs2010时的一个找不到程序集的问题
- 在WPF中使用水晶报表for vs2010的方法
- 在WPF中使用水晶报表for vs2010的方法
- .NET环境下水晶报表使用总结(转)
- VS2010水晶报表的添加与使用
- VS2010 水晶报表的使用
- .NET环境下水晶报表使用总结
- .NET环境下水晶报表使用总结
- VS2010中水晶报表的一些情况
- Vs2010的水晶报表的运用
- VS.NET2010中水晶报表应用与部署[VS2010]
- .NET环境下水晶报表使用总结
- .Net环境下水晶报表不能动态更新的问题原由及解决
- VS2010水晶报表更新到服务器IIS
- VS2010下水晶报表的使用总结-从安装到使用到部署,有图有真相
- .NET环境下水晶报表使用总结
- 水晶报表(使用VS2010配合水晶报表)