是否可以在winforms中以编程方式设计报表?比如根据用户的要求在报表中放置文本框、图片和各种东西。
我的报告目前看起来像这样:

然而,我想让用户使用我将在表单中提供的复选框来添加他们想要的东西。例如,他们选择的图像标题、具有他们定义的文本的文本框等。我在互联网上搜索过,但它们都只是用来创建动态表的。
发布于 2018-01-30 00:55:38
当然,以编程方式生成RDLC是可能的。它只是XML。有关于以编程方式生成报告的some articles out there。
然而,您可能不得不费力地处理许多复杂的问题。
根据你的截图,可能有更好的方法。您似乎正在尝试生成测验。在此基础上,您可以构建一个UI,允许用户添加各种类型的问题,然后将其保存到表中。(假设有一个数据库后端,但您的屏幕截图看起来像SSRS,所以我将沿着这条路线走)我过去所做的是将每个问题的表示保存为JSON。最后得到两个元数据列,然后是JSON的nvarchar(MAX)列。这允许更广泛的问题类型,而不需要在表结构中增加太多复杂性。
在实际的报告定义中(我使用的是Visual Studio),您可以编写查询来提取JSON并将其格式化为供SSRS使用的表。如果您至少安装了SQL Server 2014,则T-SQL中有一些原生JSON功能。我们将此与报告中的一些逻辑、一些用于处理特定元类型的子报告以及一些HTML content结合起来。对于一个有许多问题的测验,你可以做最少的查询来构建基本结构,循环每个记录,并提取关于每个问题的更具体的数据,可以是多项选择,文本等。
更新
既然你只做多项选择,我会尝试一种简单得多的方法。您只需要两个表:问题和选择。在这一点上,这对configure a tablix to do what you want来说是相当微不足道的。
https://stackoverflow.com/questions/48503024
复制相似问题