【问题标题】:How to create a page with 4x10 grid and print it out如何创建一个 4x10 网格的页面并打印出来
【发布时间】:2012-02-10 19:08:18
【问题描述】:

我正在创建一个基本上生成数学工作表的 WinForm 应用程序。我知道那里已经很少,但大多数都是付费的,免费的没有我想要的选项。

无论如何,该应用程序的重点是在 4 x 10 网格(可以更改为 5x8、2x20 等)中创建一个“页面”,其中每个单元格都包含一个数学问题。想想地址标签页。

我的问题:

  1. 我是否完全按照我想要的方式创建表单,然后打印出来?如果是这样,那将是每个问题 5 个标签或每张纸 200 个标签。有点麻烦,IMO。

  2. 有没有办法创建一个带有 5 个标签的模板,填充 5 个标签的文本属性,然后在 4x10 中每页“橡皮戳”模板 40 次?这种方法会更可取,因为这样我就不必生成数学问题并跟踪哪些数字将进入哪个标签。

如果标题有点混乱,我深表歉意,但我想不出更好的标题。

谢谢

【问题讨论】:

  • 从我的角度来看,您应该使用 Latex 来执行此操作。如果你想生成一些东西,你可以生成 Latex 源。无论如何,在处理打印时,最好的选择是使用 Crystal Reports 或 Telerik Reporting 等报告引擎。
  • 感谢您的回复。我对 LaTex 一无所知,但我会阅读它。就报告引擎而言,请参阅我对 Servy 帖子的评论。这就是你在说的吗? ——
  • 否,报告引擎用于生成包含信息的工作表。这可以是您发送给客户的信件以及为您的学生提供的数学工作表。您通常会创建一个模板(例如您的网格)并将数据/内容添加到该模板。但实际上,我在现场看到的每一个(数学)工作表都是用 Latex 做的,它非常适合创建任何类型的(科学)文档。

标签: c# winforms printing


【解决方案1】:

听起来您正在寻找用户控件。创建一个代表一个问题的用户控件,其中包含该问题的所有标签/格式/任何内容。然后,您的工作表可以将许多这些用户控件添加到表单中。 (我会使用 for 循环动态地执行此操作,而不是将其中的 40 个拖到表单上,尤其是在数字不是静态的情况下。)

【讨论】:

  • 为了清楚起见,我会: 1. 创建一个代表 1 个问题的用户控件 2. 根据我的需要动态添加用户控件 3. 单击我的表单的打印按钮,然后打印形式?假设我上面的步骤是正确的,除了打印页面以获得正确的用户控件数量之外,我如何知道打印页面上可以容纳多少用户控件?还是先完成上述步骤,然后使用报告引擎生成要打印的页面会更好?
  • 我自己没有做太多的打印工作,但我想你可以弄清楚给定页面上有多少问题(如果你确保用户控件的大小是静态的)和然后把你的问题分成这么多组。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-01-01
  • 1970-01-01
  • 2012-08-31
  • 2016-02-05
  • 1970-01-01
  • 1970-01-01
  • 2021-09-09
相关资源
最近更新 更多