VS2017使用ReportViewer报表组件
一、报表设计器安装(安装完成后,就可以在新建项中看到报表模版)
1. 点击工具-> 扩展和更新,下载Microsoft Rdlc报表设计器
2. 下载成功后重启VS2017,报表设计器自动安装。
二、安装Report Viewer控件
1.图形界面安装
在项目名称上右键->管理NuGet程序包->安装Microsoft.ReportingServices.ReportViewerControl.Winforms组件
2.命令行安装
执行命令:Install-Package Microsoft.ReportingServices.ReportViewerControl.WinForms -Pre
三、控件安装成功后将控件添加到工具栏中。
在工具箱中点击右键,选择“选择项”
在.net framework组建选项卡中选择“浏览” ,在工程根目录下
“\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40”
选择“Microsoft.ReportViewer.WinForms.dll”
四、注意问题:
1.140版本控件可以在窗体上显示,但生成报表后报表显示不居中。
2.150版本控件不能在窗体上显示,但生成报表后报表居中显示。
3.中文乱码
修改每个文本单元格字体为“宋体”。
4.报表功能文字显示英文
继承IReportViewerMessages接口,设置reportViewer1.Messages = New MessageClass();
public class MessageClass : IReportViewerMessages
{
#region IReportViewerMessages Members
public string BackButtonToolTip
{
get { return ("返回"); }
}
public string BackMenuItemText
{
get { return ("返回"); }
}
public string ChangeCredentialsText
{
get { return ("Add your custom text here."); }
}
public string CurrentPageTextBoxToolTip
{
get { return ("当前页"); }
}
public string DocumentMapButtonToolTip
{
get { return ("文档结构"); }
}
public string DocumentMapMenuItemText
{
get { return ("文档结构"); }
}
public string ExportButtonToolTip
{
get { return ("导出"); }
}
public string ExportMenuItemText
{
get { return ("导出"); }
}
public string FalseValueText
{
get { return ("FalseValueText"); }
}
public string FindButtonText
{
get { return ("查找"); }
}
public string FindButtonToolTip
{
get { return ("查找"); }
}
public string FindNextButtonText
{
get { return ("下一个"); }
}
public string FindNextButtonToolTip
{
get { return ("下一个"); }
}
public string FirstPageButtonToolTip
{
get { return ("首页"); }
}
public string LastPageButtonToolTip
{
get { return ("最后一页"); }
}
public string NextPageButtonToolTip
{
get { return ("下一页"); }
}
public string NoMoreMatches
{
get { return ("NoMoreMatches"); }
}
public string NullCheckBoxText
{
get { return ("NullCheckBoxText"); }
}
public string NullCheckBoxToolTip
{
get { return ("NullCheckBoxToolTip"); }
}
public string NullValueText
{
get { return ("NullValueText"); }
}
public string PageOf
{
get { return ("/"); }
}
public string PageSetupButtonToolTip
{
get { return ("页面设置"); }
}
public string PageSetupMenuItemText
{
get { return ("页面设置"); }
}
public string ParameterAreaButtonToolTip
{
get { return ("ParameterAreaButtonToolTip"); }
}
public string PasswordPrompt
{
get { return ("PasswordPrompt"); }
}
public string PreviousPageButtonToolTip
{
get { return ("上一页"); }
}
public string PrintButtonToolTip
{
get { return ("打印"); }
}
public string PrintLayoutButtonToolTip
{
get { return ("打印布局"); }
}
public string PrintLayoutMenuItemText
{
get { return ("打印布局"); }
}
public string PrintMenuItemText
{
get { return ("打印"); }
}
public string ProgressText
{
get { return ("正在生成报表"); }
}
public string RefreshButtonToolTip
{
get { return ("刷新"); }
}
public string RefreshMenuItemText
{
get { return ("刷新"); }
}
public string SearchTextBoxToolTip
{
get { return ("搜索"); }
}
public string SelectAValue
{
get { return ("SelectAValue"); }
}
public string SelectAll
{
get { return ("SelectAll"); }
}
public string StopButtonToolTip
{
get { return ("停止"); }
}
public string StopMenuItemText
{
get { return ("停止"); }
}
public string TextNotFound
{
get { return ("Add your custom text here."); }
}
public string TotalPagesToolTip
{
get { return ("全部页"); }
}
public string TrueValueText
{
get { return ("Add your custom text here."); }
}
public string UserNamePrompt
{
get { return ("Add your custom text here."); }
}
public string ViewReportButtonText
{
get { return ("Add your custom text here."); }
}
public string ViewReportButtonToolTip
{
get { return ("Add your custom text here."); }
}
public string ZoomControlToolTip
{
get { return ("Add your custom text here."); }
}
public string ZoomMenuItemText
{
get { return ("Add your custom text here."); }
}
public string ZoomToPageWidth
{
get { return ("页宽"); }
}
public string ZoomToWholePage
{
get { return ("整页"); }
}
#endregion
}
5.如果从对象中获取报表数据,当类型中新增属性后,需要刷新数据源和数据集,这样才能在报表中使用新属性。
6.分组统计后,单元格值为空,默认应该给补上0。
使用表达示:=IIf(Sum(Fields!Weight.Value)>0,Sum(Fields!Weight.Value),0)
7.表格嵌套,内表格随着列增加会撑大外表格。
8.报表中显示序号
dim count as integer
public function GetCount() as integer
count=count+1
return count
end function
VS2017使用ReportViewer报表组件相关推荐
- ReportViewer 控件安装
请搜索: C#VS2017 添加 ReportViewer控件 ,相关博客:https://blog.csdn.net/qq_40741855/article/details/81065685 安装 ...
- php+控制器中的全局变量,php中的全局变量引用
全局变量在函数外部定义,作用域为从变量定义处开始,到本程序文件的末尾.但和其他语言不同,php的全局变量不是自动设为可用的,在php中函数可以视为单独的程序片段,局部变量会覆盖全局变量的能见度,因此, ...
- VS2017、WPF使用报表工具RDLC完成报表,打印预览和直接打印
最近需要用到WPF做一个报表 然后经过各种查阅资料 终于整出来了一个Demo 软件是VS2017 .netframework是4.5 1.配置环境 工具,获取扩展和更新 然后安装RDLC,然后重启 新 ...
- VS2017 水晶报表安装及使用
第一步 下载Reporting(RDLC) 控件 下载安装好后,重新启动VS2017. 重启后发现在工具栏里没有 ReportViewer这一项. 解决办法: https://www.pianshe ...
- VS2017 winform开发知识点汇总
VS2017 winform开发知识点汇总 1 快捷键 2 控键缩写 2.1 标准控件 2.2 容器控件 2.3 菜单和工具栏 2.4 数据 2.5 对话框 2.6 组件 2.7 印刷 2.8 水晶报 ...
- VS 2017 添加 ReportViewer
准备工作 移除 ReportViewer 控件和卸载 Microsoft Rdlc Report Designer for Visual Studio 扩展. 这是针对已经在 VS 2017 的工具箱 ...
- winForm安装ReportViewer
在做一个小项目,想用来做表格显示数据的,找了一遍,发现DataGridView就可以用来做数据的表格显示. 后期也会用到,就把ReportViewer的安装和简单的使用写下来. 先在工具,工具箱下,浏 ...
- 用vs2017编写html,vs2017可以编写java
vs2017可以编写java [2021-02-06 06:57:17] 简介: 服务器 Dockerfile这个东西我们之前是介绍过,它方便,快捷,易用,而在vs2017中也对docker进行了支 ...
- vs2017引入mysql_windows+vs2017+C语言 引入mysql.h对MYSQL数据库的操作
mysql.h文件用作VS开发用,用来连接数据库.没有mysql.h文件,就无法调用mysql的东西 也无法用C语言对MYSQL操作.一般安装了mysql之后,这个文件就在mysql目录的includ ...
最新文章
- oracle发送邮件附件,oracle发送邮件存储过程:
- HTML5中video标签与canvas绘图的使用
- linux加密解密基础、PKI及SSL、创建私有CA
- RabbitMQ入门学习系列(六) Exchange的Topic类型
- leveldb登山之路——cache
- 我的Latex中文报告模板
- 在ArcMap中直接加载谷歌地球影像的方法
- 地壳中元素含量排名记忆口诀_【化学好好玩】用口诀帮你速记忆化学知识
- python存根文件_python中的函数存根
- 网站seo优化到底该怎么做?
- 为了看Google IO 2019大会使用的工具
- 苹果手机如何切换沙盒账号登录
- python开发erp系统odoo_ODOO快速入门与实战:PYTHON开发ERP指南
- c++工厂机器安排(贪心)
- Java POI的Excel操作(行高列宽比例;生成说明,标题,字段;导出Excel代码,压缩)
- 严恭敏老师PSINS工具箱解读——test_SINS_GPS_153
- [USACO06FEB]数字三角形Backward Digit Su…
- Synchronized局限性
- thymeleaf:字符串Strings常见的使用方法
- 门禁.dat文件用什么打开_什么是DAT文件(以及如何打开一个文件)?
热门文章
- 将项目上传到Gitee上(命令方式使用TortoiseGit方式)
- 用matlab求解线性代数方程
- iOS不能跳转到支付宝的解决办法
- 读书百客:《草虫》赏析
- 威胁快报|首爆新型ibus蠕虫,利用热门漏洞疯狂挖矿牟利
- 基于ASP.NET+SQL Server的网站登录注册功能设计与实现【100010308】
- 猫眼APP我的界面布局
- 【论文精读】Unsupervised Deep Image Stitching: Reconstructing Stitched Features to Images(无监督的深度图像拼接)
- 畅购商城六:微服务网关与jwt令牌
- sed 删除匹配行的指定字符串