2016-07-06 4 views
0

テーブルが内部にあるFlowDocumentがあります。 XAMLでテーブルを直接作成し、いくつかのセルの内容を2つの行に分割すると、すべてのセルが自動的にフィットし、行全体が同じ高さになります。WPFフロードキュメント:コードの後ろにコードを追加するとセルの高さが調整される

<TableRow Name="TestRow"> 
         <TableCell BorderThickness="1,0,1,1" BorderBrush="LightGray"> 
          <Paragraph>1</Paragraph> 
         </TableCell> 
         <TableCell BorderThickness="0,0,1,1" BorderBrush="LightGray"> 
          <Paragraph>This is sentence which is divided into two lines</Paragraph></TableCell> 
         <TableCell BorderThickness="0,0,1,1" BorderBrush="LightGray"> 
          <Paragraph>123</Paragraph></TableCell> 
         <TableCell></TableCell> 
        </TableRow> 

enter image description here

しかし、私は背後にあるコードで動的にテーブルを作成する場合、細胞は、異なる高さを持っています。

tableProducts.RowGroups[0].Rows.Add(new TableRow()); 
     TableRow currentRow = tableProducts.RowGroups[0].Rows[1]; 
     currentRow.Cells.Add(new TableCell(new Paragraph(new Run("1")) { BorderThickness = new Thickness(1, 0, 0, 1), BorderBrush = Brushes.LightGray })); 
     currentRow.Cells.Add(new TableCell(new Paragraph(new Run("This is sentence which is divided into two lines")) { BorderThickness = new Thickness(1, 0, 1, 1), BorderBrush = Brushes.LightGray })); 
     currentRow.Cells.Add(new TableCell(new Paragraph(new Run("123")) { BorderThickness = new Thickness(1, 0, 0, 1), BorderBrush = Brushes.LightGray })); 

enter image description here

私は、彼らが背後にあるコードで作成されたとき、細胞の高さを揃える方法上の任意の解決策を見つけることができません。この問題を解決する方法はありますか? new TableCell(new Paragraph(...)) { BorderThickness = ... }

答えて

0

変更new TableCell(new Paragraph(...) { BorderThickness = ... })だから理由はParagraphTableCellからすべてのスペースをとりませんし、その境界線は、細胞の内部にあります。しかし、TableCellのボーダーをペイントしようとすると、すべて正常に動作します。

+0

ありがとうございますcdmnk!解決はとても簡単でした。 –

関連する問題