UWP / WinRT:如何在TextBox上启用撤消挂钩?

时间:2015-08-07 21:16:21

标签: c++ textbox windows-runtime uwp

TextBox类已经支持撤消,因为它在上下文菜单中存在并且功能正常。

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

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

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

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

1 个答案:

答案 0 :(得分:2)

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

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

一个好样本:https://code.msdn.microsoft.com/windowsapps/Context-menu-sample-40840351也适用于UWP。