您提到您希望在后面的代码中执行此操作,但这一切都可以在 XAML 本身中完成。我想你正在使用 C#。
using System.Windows.Documents;
XAML(我将使用按钮示例,命令可以在任何地方使用):
<Button Name="increaseIndentButton" Command="EditingCommands.IncreaseIndentation"/>
<Button Name="decreaseIndentButton" Command="EditingCommands.DecreaseIndentation"/>
<RichTextBox Name="myRichTextBox" AcceptsTab="True"/>
使用EditingCommands
将满足您上面列出的所有要求。
- 如果所选文本为单个段落(或更少),则缩进整个段落。
- 如果未选择任何文本,则缩进整个段落,其中存在插入符号。
- 如果所选文本超过一个段落,则将所有所选段落全部缩进。在这种情况下,可以部分或全部选择段落。
此外,增加和减少缩进都有热键,分别是 Ctrl+T 和 Ctrl+Shift+T。
更多信息可在此处获得:http: //msdn.microsoft.com/en-us/library/system.windows.documents.editingcommands (v=vs.100).aspx