RichTextBox
非常に少量のテキスト (行末を含めて 100 文字未満) の があります。私は 1 つのイベント (TextChanged
空の本体) を持ち、スタイルはなく、ウィンドウは非常にシンプルです。
<Window x:Class="W.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow">
<TabControl HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Name="FileTabControl">
<TabItem Header="TabItem">
<RichTextBox AcceptsReturn="True" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Name="SampleTextBox">
<RichTextBox.Resources>
<Style TargetType="{x:Type Paragraph}">
<Setter Property="Margin" Value="0"/>
</Style>
</RichTextBox.Resources>
</RichTextBox>
</TabItem>
</TabControl>
</Window>
それでおしまい。
しかし、RichTextBox にコードを入力すると、非常にラグがあり、ぎこちなく感じられます。かなり似たような状況で WPF の RTB のパフォーマンスの問題を抱えている他の多くの人々について読んだことがありますが、誰も解決策を見つけていないようです。
参考までに、AvalonEdit のようなものを使用することもできますが、LGPL が商用プロジェクトで使用できないことを意味するかどうかを解析できませんでした。また、構文の強調表示を定義するのではなく、アンマネージ コードに基づく構文の強調表示なども必要です。