C# 报告工具,它打印我们传递给它的控件

C# 报告工具,它打印我们传递给它的控件,c#,mysql,reporting,C#,Mysql,Reporting,除了crystal report与c#和mysql一起使用外,最好的报告工具是什么?因为crystal report必须在用户机器中下载?那么crystal report使用c#with mysql的另一个替代方案是什么呢?它的大小应该更小,用户不需要下载更多,并且应该具有良好的功能。(都是开源的,需要付费。) 编辑:我只需要在表单上动态打印控件,比如如果用户想要打印第三方控件,那么也应该打印它,但是它不应该像树状视图的图像一样打印,就像用户想在窗口窗体上打印树状视图一样,但树状视图是由用户折叠

除了crystal report与c#和mysql一起使用外,最好的报告工具是什么?因为crystal report必须在用户机器中下载?那么crystal report使用c#with mysql的另一个替代方案是什么呢?它的大小应该更小,用户不需要下载更多,并且应该具有良好的功能。(都是开源的,需要付费。)


编辑:我只需要在表单上动态打印控件,比如如果用户想要打印第三方控件,那么也应该打印它,但是它不应该像树状视图的图像一样打印,就像用户想在窗口窗体上打印树状视图一样,但树状视图是由用户折叠的,所以如果用户在这里打印此树状视图,则不应该打印折叠的树状视图,而应该打印整个树状视图(展开)。

根本不是一个报告工具,但是,如果你最感兴趣的只是一个PDF输出,我推荐。然后,您可以在用户下载报告之前,使用占位符填充报告,并将其替换为变量,就像任何软件一样


我同意这不是最好的方法,但这完全取决于你在寻找什么。

有两种选择供你选择

  • SQL Reporting Services—这要求您安装带有SRS的Microsoft SQL server,但您的报表本身可以连接到其他数据库,包括MySQL(通过ODBC),然后您可以在C#应用程序中使用ReportViewer组件来呈现它。在服务器端进行处理时,用户无需额外下载,而且很容易嵌入到web应用程序、SharePoint等中
  • VisualStudio2010附带了出色的报告控件,可以使用任何数据源。如果您选择2008,您可以使用这些控件的带外版本。在所有情况下,这些都只是代码,因此需要部署一些额外的程序集。您可以在中看到这些示例:

@m.edondson,它是动态的吗?它是如何打印的?@Harikrishna-是的,它在运行时生成PDF文件(因此您可以根据需要操作数据)。它将为用户提供一个PDF文件,以便他们可以进入文件->打印。@m.edmondson,就像在工具的用户界面中,如果假设有treeview,并且它完全折叠,那么它会完美地打印整个treeview吗?即使它折叠了,也就是说它不应该打印为视图,它应该打印整个treeview?@Harikrishna-不确定你的意思,它会打印整个treeview中的任何内容PDF@m.edmondson,例如,如果我们在您的答案下面的评论更多,并且第一眼就看不到,如果您刷新此页面,则所有评论都将被显示,但如果我们打印此页面,则应打印所有评论,即使所有评论不是第一眼看到的。