2010-09-23 3 views
4

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

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

ответ

2

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

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

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

9

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

<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> 

Oliver

+0

Подчеркнул свойство CellSpacing, так как это очень важно для правильного его отображения - просто потратил час, пытаясь понять, откуда я получаю 2px отступы. – Dennis

+0

Да, я перепроверил мой код, и у меня есть TABLE, установленный для CellSpacing = 0 - мои извинения за недосмотр ... –