在uwp应用程序中,有办法禁用RichEditBox控件上的键盘快捷键吗?我想禁用Ctrl,Ctrl-2(改变行距),Ctrl(右对齐)等键组合。RichEditBox是UserControl的一部分。
我尝试使用KeyDown事件的richEditBox,但仍然Ctrl选择所有文本:
private void OnRichEditBoxKeyDown(object sender, KeyRoutedEventArgs e)
{
var ctrl = Window.Current.CoreWindow.GetKeyState(Windows.System.VirtualKey.Control);
if (ctrl.HasFlag(CoreVirtualKeyStates.Down))
{
if (e.Key == VirtualKey.A)
{
e.Handled = true;
}
}
}如何在UWP应用程序中禁用默认的ctrl键盘快捷键?我使用的是Microsoft版本10.0.14393。
发布于 2017-07-18 17:11:48
OnKeyDown中重写Richeditbox事件这里是一个代码示例:
在代码后面
public class MyRichEditBox : RichEditBox
{
protected override void OnKeyDown(KeyRoutedEventArgs e)
{
var ctrl = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control);
if (ctrl.HasFlag(CoreVirtualKeyStates.Down))
{
//return; //if you want to totally disable crtl
if (e.Key == VirtualKey.A)
{
return;
}
}
base.OnKeyDown(e);
}
}在XAML中
<local:MyRichEditBox/>https://stackoverflow.com/questions/45169753
复制相似问题