0
我已经重写了键处理事件,并在用户按下RichTextBox的Tab键时插入标签。如何保存Silverlight RichTextBox中的选项卡?
当我从该RichTextBox保存XAML并重新加载它时,所有选项卡现在都是空格。
有谁知道我能做些什么来让RichTextBox显示标签?
我已经重写了键处理事件,并在用户按下RichTextBox的Tab键时插入标签。如何保存Silverlight RichTextBox中的选项卡?
当我从该RichTextBox保存XAML并重新加载它时,所有选项卡现在都是空格。
有谁知道我能做些什么来让RichTextBox显示标签?
我通过暂时放置占位符解决了此问题。
private const string TAB = " ";
private const string TAB_PLACEHOLDER = "===TAB===";
我使用的占位符暂时代替所有的制表符,然后一旦他们在我的RichTextBox替换所有选项卡中的占位符。
textBox1.Text = richTextBox1.Xaml;
string xaml = richTextBox1.Xaml;
xaml = xaml.Replace(TAB, TAB_PLACEHOLDER);
richTextBox2.Xaml = xaml;
foreach (Block block in richTextBox2.Blocks)
{
foreach (Inline inline in ((Paragraph)block).Inlines)
{
((Run) inline).Text = ((Run) inline).Text.Replace(TAB_PLACEHOLDER, TAB);
}
}