代码之家  ›  专栏  ›  技术社区  ›  Pieter Breed

WPF文档:如何创建“下划线”段落,在该段落上可以编写调查表的答案。

  •  1
  • Pieter Breed  · 技术社区  · 15 年前

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

    您将如何使用WPF文档创建此文件?

    下面是我的意思的一个模型,使用word和tables和tabstop完成:

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

    1 回复  |  直到 15 年前
        1
  •  0
  •   Pieter Breed    15 年前

    我终于找到了实现这一点的方法,我想我会分享。

    创建具有两行两列的外部表,如预期的那样。

    对于下划线,创建三个不同的表,每个表只有一行和一列,边框仅应用于底部。

    这就是它在代码中的样子:

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