Однострочные границы в таблицах FlowDocument - PullRequest
5 голосов
/ 23 сентября 2010

У меня есть таблица FlowDocument, где я хочу немного оживить макет. Я думаю, что-то вроде тонкой линии, отделяющей промежуточные суммы в счете-фактуре от итоговой суммы, или что-то вроде строки под строкой заголовка, обычно представляемой в стандартных стилях таблиц Word 2007+. Я надеялся, что смогу просто добавить пустой TableRow и установить высоту в несколько пиксельных единиц, но я не нахожу свойства, чтобы заставить высоту строки соответствовать моему желанию.

Есть ли способ (или хак) сделать тонкую границу под или над целой строкой в ​​System.Windows.Documents.Table?

Ответы [ 2 ]

9 голосов
/ 20 июля 2011

Когда я распечатываю это, оно просто выглядит как финт.

<TableRow FontSize="0.008">
    <TableCell Padding="0" BorderBrush="Gray" BorderThickness="0.5" ColumnSpan="5" />
</TableRow>

Убедитесь, что в таблице есть CellSpacing="0"

Я определяю TableColumns для вертикальнойстроки между столбцами:

<Table.Columns>
    <TableColumn Width="140" Name="colItems" />
    <TableColumn Width="0" Name="colSpace1" />
    <TableColumn Name="colDescription" />
    <TableColumn Width="0" Name="colSpace2" />
    <TableColumn Width="150" Name="colAmount"/>
</Table.Columns>

Затем в TableRowGroup для строки заголовка:

<TableRow FontSize="14">
    <TableCell TextAlignment="Center" Padding="0,4,0,2">
        <Paragraph>ITEMS</Paragraph>
    </TableCell>
    <TableCell BorderBrush="Gray" BorderThickness="0.5" />
    <TableCell TextAlignment="Center" Padding="0,4,0,2">
        <Paragraph>DESCRIPTION</Paragraph>
    </TableCell>
    <TableCell BorderBrush="Gray" BorderThickness="0.5" />
    <TableCell TextAlignment="Center" Padding="0,4,0,2">
        <Paragraph>AMOUNT</Paragraph>
    </TableCell>
</TableRow>

Оливер

2 голосов
/ 23 сентября 2010

сам взломал. Установка FontSize на что-то маленькое позволила мне сжать высоту строки.

<TableRow Background="Black" FontSize="0.01">
    <TableCell ColumnSpan="2"  />
</TableRow>

Выше работает, но линия все еще довольно толстая. Любые предложения, чтобы уменьшить высоту еще дальше?

...