水晶报表的打印是选择一条数据打印,在主页面数据表格点击选中行再点击打印按钮,弹出打印页面。打印页面(View)布局如下:
这里需要添加两个引用:
还需要安装水晶报表,安装好了之后就在你需要放水晶报表的文件夹上右键弹出窗口,点击新建项,如下:
改好名称点击添加
添加水晶报表之后就要弄数据集,水晶报表打印需要数据,这数据就是通过数据集传递过去。
数据集跟水晶报表弄好之后就是在ViewModel上写代码了,
在ViewModel里面一般分为三个部分,属性、命令、执行方法,在写命令的时候要把页面的内容传到ViewModel里面如下:
然后就是写方法,给方法传一个值,先 实例化 CrystalReportsViewer 接收值,然后就是根据主页面传过来的ID查询方法,把查询出来的值放一个临时表格,然后就调用临时表格的数据。
整体代码如下:
这样子还差一点就是要改App.config里面的一个地方
加上startup标签里面加上useLegacyV2RuntimeActivationPolicy="true"属性
打印出来的效果如下: