2010-09-23 24 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"

我定義TableColumn來爲列之間的垂直線:

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

奧利弗

+0

強調了CellSpacing屬性,因爲它對於讓它正確顯示至關重要 - 只花了一個小時試圖找出我得到2px填充的位置。 – Dennis 2012-02-21 22:27:45

+0

是的,我已經重新檢查了我的代碼,並且確實將TABLE設置爲CellSpacing = 0 - 我對疏忽表示歉意...... – 2012-05-02 04:08:52