c# – 如何删除通过CommandManager.RegisterClassInputBinding添加的输入绑定?

前端之家收集整理的这篇文章主要介绍了c# – 如何删除通过CommandManager.RegisterClassInputBinding添加的输入绑定?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用CommandManager.RegisterClassInputBinding将绑定添加到整个类型.现在我想删除它.

这是我测试的.

private void CommandBinding_Executed_1(object sender,ExecutedRoutedEventArgs e)
{
    CommandManager.RegisterClassInputBinding(
        typeof(TextBox),new InputBinding(TestCommand,new KeyGesture(Key.S,ModifierKeys.Control)));


    MessageBox.Show("CommandBinding_Executed_1");
}

在Ctrl H上调用方法并为Ctrl S注册新的输入绑定.如果我在Ctrl H之前按下Ctrl S它不起作用,但是当它按下它之后按下它.

我检查了sender.InputBindings并且只有一个绑定(Ctrl S)所以我得出结论,RegisterClassInputBinding()不会将绑定添加到每个现有实例,而是存储与该类关联的绑定,然后将它们与处理过的手势进行比较.

但那么为什么没有RemoveClassInputBinding()方法呢?

猜你在找的C#相关文章