Windows Phone の 2048px の最大サイズ制限にRichTextBox
対処するために、複数作成したいと考えています。scrollable-textblockソリューションUIElement
があることは承知しています。
ここに私のテストコードがあります:
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
が であるStackPanel
場合、アプリケーションは問題なく動作しますが、ActualHeight
プロパティはデバッグ ウィンドウで常に 0 を返します。
XAML でを定義し、RichTextBox
そのコンテンツを C# で設定すると、そのサイズ プロパティはすべて正常です。
では、純粋な C# で RichTextBox を作成し、そのサイズを測定するにはどうすればよいでしょうか?
ところで、2048px の制限に関する公式ドキュメントは見つかりません。