[英]Save Background Color when saving RichTextBox to rtf or html file?
[英]Losing table width autosize when saving RTF from RichTextBox
好的,所以我有一个RichTextBox用户控件,用户可以在其中输入任意数量的Rich Text元素,然后将内容转换为HTML。 目前,我正在专门处理表。 在大多数情况下,它们很容易工作,但是当我尝试将RTF保存到文件然后再次加载时, \\trautofit1
控制字消失,表宽度减小。
要保存到RTF文件,我使用: TextRange.Save(fileStream, DataFormats.Rtf);
我很确定问题与RTF的保存方式有关,因为由此产生的文件也具有缩小的表。
这是保存之前的表:
这是保存和加载后的表:
那么问题来了: 是否有任何方法可以解决此问题,或者有更好的方法来获取RTF,还是应该使用其他控制字来自动调整表格的宽度?
好的,我找到了解决方案,但这并不是我一直在寻找的解决方案。 之所以决定走这条路,是因为Word就是这样做的。 当您创建表时,我会找到RichTextBox的大小,然后将其除以列数,然后使用\\cellx
显式设置每列的宽度。 不是我想要的漂亮解决方案,但是它可以工作。
我使用了另一种黑客解决方案,在保存数据之前,我更改了列宽:
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);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.