创建一个WPF文本框,该文本框只响应字符按键和少数选定的编辑按键

创建一个WPF文本框,该文本框只响应字符按键和少数选定的编辑按键,wpf,.net-3.5,wpf-controls,Wpf,.net 3.5,Wpf Controls,WPF文本框响应许多编辑命令。我想消除绝大多数,让它响应任何文本输入和一些编辑命令,如backspace&delete。我知道我可以处理KeyDown事件,但我看不到任何区分字符输入和编辑笔划的简单方法。WPF在.NET 3.5下没有内置的屏蔽文本框。 如果您在google和stackoverflow中搜索:WPF屏蔽文本框WPF在.NET 3.5下没有内置屏蔽文本框。 如果您在google和stackoverflow中搜索:WPF Masked TextBox,您将找到许多起始位置。您可以使用

WPF文本框响应许多编辑命令。我想消除绝大多数,让它响应任何文本输入和一些编辑命令,如backspace&delete。我知道我可以处理KeyDown事件,但我看不到任何区分字符输入和编辑笔划的简单方法。

WPF在.NET 3.5下没有内置的屏蔽文本框。

如果您在google和stackoverflow中搜索:WPF屏蔽文本框

WPF在.NET 3.5下没有内置屏蔽文本框。

如果您在google和stackoverflow中搜索:WPF Masked TextBox,您将找到许多起始位置。您可以使用预览事件。它们发生在实际执行工作的关键事件之前。例如,如果要禁用向下箭头以在文本中上下移动,请在PreviewKeyDownEvent中选中“e.Key”作为向下键,如果找到,则将e.Handled设置为true。这将有效地从处理中删除按键。因此,KeyDown永远不会被调用

使用此方法,您可以删除特定的键,或键和修改器的组合(如CTRL-C,如果您想禁用“复制”快捷方式)


希望这有帮助!如果是这样,请不要忘记投票并/或将其标记为已接受。

您可以使用预览事件。它们发生在实际执行工作的关键事件之前。例如,如果要禁用向下箭头以在文本中上下移动,请在PreviewKeyDownEvent中选中“e.Key”作为向下键,如果找到,则将e.Handled设置为true。这将有效地从处理中删除按键。因此,KeyDown永远不会被调用

使用此方法,您可以删除特定的键,或键和修改器的组合(如CTRL-C,如果您想禁用“复制”快捷方式)

希望这有帮助!如果是这样,别忘了投票支持和/或将其标记为已接受