获取FlowDocument.PageWidth属性

时间:2017-06-30 11:16:43

标签: c# wpf width richtextbox flowdocument

我有一个WPF RichTextBox控件,我将RichTextBox.Document.PageWidth属性的值设置为double.NaN,以便自动确定该值。

现在我想得到自动确定的值,但是我不能通过读取属性的值来这样做,因为它返回double.NaN

修改

我尝试在属性的RichTextBox.DesiredSize方法中获取OnMyPropertyChanged的值,该值可以设置为auto(值为double.NaN):

if (!double.IsNaN(MyProperty)) richTextBox.Width = MyProperty;
else richTextBox.Width = richTextBox.DesiredWidth;

但是,DesiredSize在两个轴上都返回0。

2 个答案:

答案 0 :(得分:1)

这是设计的...... RichTextBox意味着存在于固定宽度的视图中。应该有效的漫游 - 将其放入边框,并将富文本框的宽度绑定到边框的ActualWidth。

干杯。

答案 1 :(得分:1)

创建Random random = new Random(); Scanner scanner = new Scanner(System.in); int[] array = random.ints(scanner.nextInt()).toArray(); 控件(无需将其添加到任何父控件),设置获取宽度所需的文本值,以及字体属性(TextBlock,{{1} },FontFamilyFontStyleFontWeight),然后调用控件上的FontStretch方法,以便确定其FontSize属性的值,那你就可以看了。