2013-07-09 62 views
2

好吧,所以我有一個RichTextBox用戶控件,用戶可以在其中輸入任意數量的Rich Text元素,然後將內容轉換爲HTML。目前,我正在專門研究表格。大多數情況下,它們的工作非常容易,但是當我嘗試將RTF保存到文件並再次加載時,\trautofit1控制字消失並且表寬度減小。當從RichTextBox保存RTF時丟失表格寬度自動調整

要保存到RTF文件,我使用的是:TextRange.Save(fileStream, DataFormats.Rtf); 我敢肯定,問題自帶的RTF是如何保存的,因爲由此導致的文件具有收縮表也是如此。

下面是表前的保存:Good Table

下面是表後的保存和加載:Bad Table

所以問題:反正在對付這種行爲,或者是有獲得RTF的更好方法,還是應該使用不同的控制字來自動調整表格的寬度?

回答

0

好的,以及我找到了一個解決方案,但它不是我正在尋找的。是什麼導致了決定走這條路的是這是Word如何做到的。當您創建表格時,我會查找RichTextBox的大小,然後將其除以列數,然後使用\cellx明確設置每列的寬度。不是我尋找的漂亮的解決方案,但它的工作原理。

0

我用另一種解劈,將數據保存在我更改列寬:

if (table != null && table.Columns.Count == 2) 
{ 
    table.Columns[0].Width = new GridLength(200); 
    table.Columns[1].Width = new GridLength(200); 
    document.Blocks.Add(table); 
} 
+0

我重新審視在一個月左右的時間這個項目。我會嘗試你的建議。也許它會證明有更好的結果! – Th3BFG