水晶报表在vs2010 WPF环境下的尝试

原文:水晶报表在vs2010 WPF环境下的尝试

由于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内置的水晶报表多了一些特性,比如在设计模板,对象就多了一个格式刷功能,如图示

它可以将指定对象的格式应用到其他对象,只需在指定对象先获取其格式刷,然后将鼠标移到其他对象上时,鼠标形状会自动变成一个刷子形状,单击一下,该对象便与指定对象的格式完全一致,非常便利。这只是其中之一,还有其他一些特性待我们好好研究

模板设计好了,接下来进入代码

[csharp] view plaincopyprint?

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Windows;  
  6. using System.Windows.Controls;  
  7. using System.Windows.Data;  
  8. using System.Windows.Documents;  
  9. using System.Windows.Input;  
  10. using System.Windows.Media;  
  11. using System.Windows.Media.Imaging;  
  12. using System.Windows.Shapes;  
  13.   
  14. namespace WpfApplication1  
  15. {  
  16.     ///   
  17.     /// MainWindow.xaml 的交互逻辑  
  18.     ///   
  19.     public partial class MainWindow : Window  
  20.     {  
  21.         ///   
  22.         /// 水晶报表“骨架”  
  23.         ///   
  24.         DataSet1 myDataSet = new DataSet1( );  
  25.   
  26.         public MainWindow( )  
  27.         {  
  28.             InitializeComponent( );  
  29.         }  
  30.   
  31.         protected override void OnInitialized( EventArgs e )  
  32.         {  
  33.             base.OnInitialized( e );  
  34.   
  35.             //往数据集塞数据  
  36.             myDataSet.DataTable1.AddDataTable1Row( "Luols" , 1 );  
  37.             myDataSet.DataTable1.AddDataTable1Row( "Luols" , 2 );  
  38.             myDataSet.DataTable1.AddDataTable1Row( "Luols" , 3 );  
  39.         }  
  40.   
  41.         ///   
  42.         /// 报表预览  
  43.         ///   
  44.         ///   
  45.         ///   
  46.         private void btnReport_Click( object sender , RoutedEventArgs e )  
  47.         {  
  48.             CrystalReport1 myReport = new CrystalReport1( );  
  49.             myReport.SetDataSource( myDataSet );  
  50.   
  51.             //这里与之前版本有区别  
  52.             //之前是 crystalReportsViewer1.ReportSource = myReport  
  53.             crystalReportsViewer1.ViewerCore.ReportSource = myReport;  
  54.         }  
  55.     }  
  56. }  

点击运行,呀!报错了,如图示

解决方案可参考我之前写的这篇:http://blog.csdn.net/luols/article/details/6047962

处理后再点击运行,好了,运行效果如下

更多水晶报表知识:http://blog.csdn.net/luols/article/category/690640

时间: 2024-12-10 02:59:38

水晶报表在vs2010 WPF环境下的尝试的相关文章

c#-C# wpf环境下,多窗口传值的问题

问题描述 C# wpf环境下,多窗口传值的问题 是这样的,在写一个类似于通讯录的多窗口软件,主窗口提供查找功能,查找成功就new一个新窗口,把找到的结果传到新窗口.新窗口要有修改和删除的功能,那么问题就是:这个窗口删除的联系人和修改的联系人应该怎么返回到主窗口呢? ps/ 已声明联系人的类,也为联系人的类声明了一个容器类,该容器类提供增删查改的功能. 解决方案 方法一:你可以吧主窗口绑定数据的方法公开,new新窗口的时候吧主窗口this对象传给新窗口在新窗口,每个新窗口修改数据的时候 你用主窗口

Winsock控件在VS2010 C# X64环境下无法运行

问题描述 哪位大神可有关于TCP通信的控件,PC当客户端,像服务器发送数据,等待接收数据即可发送我邮箱103987767@qq.com非常感谢! 解决方案 解决方案二:这个控件在X64下不能用解决方案三:c#怎么会想到用这个控件?有这么多现成的Socket通信的资源,你是vb选手然后有工程不得不用c#吗?建议放弃这个想法.解决方案四:你有资源吗,我不是很会用socket解决方案五:socket通讯的资源网上多得很,通讯的基础,基本上编程都绕不开的,楼主不如趁此机会好好尝试编一下.解决方案六:引用

VS2010中水晶报表应用及实例

原文:VS2010中水晶报表应用及实例 基本分类如下:第一部分:VS2010简介VS2010是微软的提供的一套完整的开发环境,功能也是相当的大微软宣布了下一代开发工具和平台的正式名称,分别称为"Visual Studio Team System 2010"和".NET Framework 4.0",很显然二者会在2010年发布. VSTS 2010开发代号"Rosario"(阿根廷港市罗萨里奥),将致力于引领下一代平台发展.提高开发人员的工作效率

vs2010 wfp 水晶报表 隐藏grouptree

问题描述 vs2010 wfp 水晶报表 隐藏grouptree 请教s2010 wfp 下,使用水晶报表,如何隐藏grouptree? 看网上有更改ToolPanelView属性的,但我没找到,请高手不吝赐教-- 解决方案 我用的是vs2010专业版,水晶报表使用CRforVS_13_0安装包

如何在.net环境中使用水晶报表

问题描述 我装了正版的水晶报表9.2,在.net环境里怎么用,我在添加新项对话筐里怎么找不到水晶报表,是不是需要设置什么,请各位大侠帮帮忙,急用!!! 解决方案 解决方案二:ui->右键->属性->看看有没有水晶报表依赖

SilverLight页面怎么使用水晶报表

问题描述 各位网页朋友,SilverLight页面怎么使用水晶报表啊?都说SilverLight页面可以使用水晶报表,殊不知SilverLight页面的工具箱中没有水晶报表这个工具,这种情况下咋办?求这方面的专家给讲解一下如何在SilverLight页面下面使用或者调用实现水晶报表? 解决方案 解决方案二:http://blog.csdn.net/luochengbang/article/details/4260166不知道这个是不是你要的?解决方案三:http://www.baidu.com/

.NET环境下水晶报表使用总结 lihonggen0(原作)

水晶报表  .NET环境下水晶报表使用总结    lihonggen0(原作)    水晶报表是一个优秀的报表开发工具,本人在开发通用管理系统的时候,所有报表都使用水晶报表,其简单.易用和强大的功能令笔者倍加喜爱,现将水晶报表使用手记呈现给大家. 一.在使用自带的水晶报表时,请注册,否则只能使用30次 水晶报表注册码注册号:6707437608密码:AAP5GKS0000GDE100DS 二.使用CrystalReportViewer进行预览 CrystalReportViewer控件允许在应用

.NET环境下水晶报表使用总结 lihonggen0(原作)-报表/图形/Office-.NE

 .NET环境下水晶报表使用总结    lihonggen0(原作)        水晶报表是一个优秀的报表开发工具,本人在开发通用管理系统的时候,所有报表都使用水晶报表,其简单.易用和强大的功能令笔者倍加喜爱,现将水晶报表使用手记呈现给大家.一.在使用自带的水晶报表时,请注册,否则只能使用30次水晶报表注册码注册号:6707437608密码:AAP5GKS0000GDE100DS 二.使用CrystalReportViewer进行预览CrystalReportViewer控件允许在应用程序中查

.NET环境下水晶报表使用总结

  水晶报表是一个优秀的报表开发工具,本人在开发通用管理系统的时候,所有报表都使用水晶报表,其简单.易用和强大的功能令笔者倍加喜爱,现将水晶报表使用手记呈现给大家. 一.在使用自带的水晶报表时,请注册,否则只能使用30次 水晶报表注册码 注册号:6707437608 密码:AAP5GKS0000GDE100DS 二.使用CrystalReportViewer进行预览 CrystalReportViewer控件允许在应用程序中查看 Crystal Report.ReportSource 属性用于设