wpf - 在客户端上不安装任何东西的情况下显示报告的最佳方式是什么

标签 wpf visual-studio-2015 report

我是一个为公司开发软件的新手开发人员,虽然我对编程非常熟悉,但我很少为公司开发软件,现在加入公司后,我开始遇到创建软件的问题。

我必须开发一个可以在客户端计算机上轻松安装和更新的软件,我使用 clickonce 解决了这个问题,然后问题出现了,我开发的几乎所有软件都必须有报表查看器,我尝试使用微软的报表查看器,但这给了我更多安装时出现问题,我尝试了我在网上找到的所有内容来进行易于安装的设置,但是在安装reportviewer时我一直在努力,它在某些计算机上保持错误,尽管有时它在其他计算机上安装时没有错误。

我需要一个建议,如何开发一个可以显示报告并打印报告的程序,而无需在客户端安装任何其他程序。我在 Visual Studio 2015 上使用 C#,我开发了 WPF,并使用它进行了 web。

最佳答案

在您的项目中使用 nuget 并向其添加以下依赖项

Microsoft.ReportViewer.2015.Runtime

Microsoft.ReportViewer.VS2015.WinForms

像这样启动您的报告查看器:

var dlg = new ReportPreviewDialog();
dlg.ReportViewer.LocalReport.DisplayName = "My report";
dlg.ReportViewer.LocalReport.DataSources.Add(new ReportDataSource("datasource1", data));
dlg.ReportViewer.LocalReport.DataSources.Add(new ReportDataSource("datasource2", data2));
dlg.ReportViewer.LocalReport.ReportEmbeddedResource = "YourClient.TheReport.rdlc";
dlg.ShowDialog();
TheReport.rdlc是您的项目中作为资源的报告(=> 构建操作:嵌入式资源)。确保命名空间正确,否则将找不到您的报告。

与 WPF 一起使用。

关于wpf - 在客户端上不安装任何东西的情况下显示报告的最佳方式是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35172455/

相关文章:

c# - 如何使 TextBox 元素在 Grid 中居中

c# - 找不到 namespace 名称 'MvcSiteMapProvider'

c# - 如何将标签或按钮准确地放置在表单的中间?

report - APEX动态定义默认文件名?

java - setter/getter 无法正常工作

email - Jenkins : Sending Build Trend Graph as email

c# - WPF:如果为 Null,则更改 DataContext?

c# - 一个低开销的文件写入过程应该在它自己的线程上吗?

.net - WPF无响应的UI问题

iis-express - Visual Studio 2015 - 更改新 applicationHost.config 的模板