WPF文档:如何创建“下划线”段落,您可以在其上写下问卷的答案

时间:2009-09-21 20:02:49

标签: c# wpf flowdocument

我正在创建一个应用程序,旨在打印出人类在纸上书写的表格。这些文件遵循问答式。通常,您的段落具有“下划线”样式,可以在其上写下段落长度的自由格式答案。

您如何使用WPF文档创建此内容?

这是我的意思的模型,使用Word和表格和tabstops完成:

mock up http://img147.imageshack.us/img147/9350/questionnaire.png

1 个答案:

答案 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);
        }