我正在创建一个应用程序,旨在打印出人类在纸上书写的表格。这些文件遵循问答式。通常,您的段落具有“下划线”样式,可以在其上写下段落长度的自由格式答案。
您如何使用WPF文档创建此内容?
这是我的意思的模型,使用Word和表格和tabstops完成:
mock up http://img147.imageshack.us/img147/9350/questionnaire.png
答案 0 :(得分:0)
我终于找到了实现这一目标的方法,以为我会分享。
创建具有两行和两列的外部表,就像您期望的那样。
对于下划线,创建三个不同的表,每个表只有一行和一列,边框仅应用于底部。
这就是它在代码中的样子:
for (int i = 1; i < pQuestionSpec.NumberOfLines; i++)
{
Table innerT = new Table();
var col1 = new TableColumn();
col1.Width = new GridLength(1, GridUnitType.Star);
innerT.Columns.Add(col1);
var innerRowGroup = new TableRowGroup();
var innerRow = new TableRow();
var cell2 = new TableCell();
cell2.BorderThickness = new Thickness(0, 0, 0, 1);
cell2.BorderBrush = Brushes.Black;
cell2.Blocks.Add(new Paragraph());
innerRow.Cells.Add(cell2);
innerRowGroup.Rows.Add(innerRow);
innerT.RowGroups.Add(innerRowGroup);
cell.Blocks.Add(innerT);
}