我想创建多个RichTextBox
来处理UIElement
Windows Phone 上 2048px 的最大尺寸限制。我知道有一个可滚动的文本块解决方案。
这是我的测试代码:
RichTextBox rtb = new RichTextBox();
rtb.TextWrapping = TextWrapping.Wrap;
rtb.FontSize = (Application.Current.Resources["PhoneFontSizeMedium"] as double?).Value;
rtb.FontFamily = Application.Current.Resources["PhoneFontFamilyNormal"] as FontFamily;
rtb.Width = this.Width;
Run run = new Run();
run.Text = "Hello World.Hello World.Hello World.Hello World.Hello World.";
Paragraph para = new Paragraph();
para.Inlines.Add(run);
rtb.Blocks.Add(para);
double rtbh = rtb.ActualHeight;
BodyPanel.Children.Add(rtb);
BodyPanel
是 a StackPanel
,应用程序运行良好,但是,该ActualHeight
属性在调试窗口中始终返回 0。
如果我RichTextBox
在 XAML 中定义 a 并在 C# 中设置它的内容,它的大小属性都是正常的。
那么如何在纯 C# 中创建 RichTextBox 并获得其大小测量值?
顺便说一句,我找不到任何关于 2048px 限制的官方文档。