2

TextBox 类已经支持撤消,因为它在上下文菜单中存在并起作用。

我想实现每个常见文档编辑器(如 Microsoft Word)中的撤消/重做按钮。当它们没有要采取的操作时,它们将被禁用,并且当有一个撤消/重做堆栈要移动时,按下按钮将导致 TextBox 的内容撤消和重做。

查看TextBox API,似乎没有提到如何挂钩撤消数据。唯一的讨论是提到撤消存在于上下文菜单中。

如何在 TextBox 上实现撤消/重做挂钩?

如果它有所作为,我目前正在使用 C++/CX 进行编码。

4

1 回答 1

2

您绝对可以通过 TextChanged 事件手动记录历史记录。撤消命令用于显示之前的输入。钩入控件似乎是不可能的。

处理来自 TextBox 的 ContextMenuOpening 事件,您可以通过自己的命令修改 Popup,例如您自己的撤消/重做历史。

一个很好的示例:https ://code.msdn.microsoft.com/windowsapps/Context-menu-sample-40840351也适用于 UWP。

于 2015-08-24T07:05:03.063 回答