我有一个FlowDocument表,我想稍微调整一下布局.我想的是一条细线,将发票上的子金额与标题Word2007表格样式中标题行标题行之间的行分隔开来.我希望我可以添加一个空的TableRow并将高度设置为几个像素单位,但我发现没有任何属性可以强制行的高度达到我的愿望.
有没有办法(或黑客)在System.Windows.Documents.Table中的整行下面或上面创建一条细边框线?
当我打印出它时,它看起来就像一条假动线.
<TableRow FontSize="0.008">
<TableCell Padding="0" BorderBrush="Gray" BorderThickness="0.5" ColumnSpan="5" />
</TableRow>
Run Code Online (Sandbox Code Playgroud)
确保表有 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>
Run Code Online (Sandbox Code Playgroud)
然后在表头行的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>
Run Code Online (Sandbox Code Playgroud)
奥利弗
我自己设计了一个 hack。将 FontSize 设置为较小的值使我能够压缩行高。
<TableRow Background="Black" FontSize="0.01">
<TableCell ColumnSpan="2" />
</TableRow>
Run Code Online (Sandbox Code Playgroud)
上面的方法有效,但是线条仍然很粗。有什么建议可以进一步降低高度吗?
| 归档时间: |
|
| 查看次数: |
8696 次 |
| 最近记录: |