我正在实现一个WPF 4.0多点触控应用程序,它根据手势执行文本格式化。虽然我已经设法实现了几种文本格式化,但我很难实现文本缩进(MS Word样式)。通过MS字样式,我的意思是当执行左/右缩进时:
我找到了一些解决方案,但目前似乎没有一个适合我。我使用RichTextBox控件,我在我的XAML文件中创建。我想在后面的代码中执行文本缩进。有人可以告诉我如何实现这一目标吗?谢谢。
答案 0 :(得分:1)
你提到你想在后面的代码中执行此操作,但这一切都可以在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