在我的应用程序中,我们使用AvalonDock
作为停靠管理器,并且有各种不同的窗口。其中一个包含AvalonEdit
编辑器。我们最近注意到一个特定的交互问题,我发现这是由AvalonDock
引起的。
在尝试阻塞选择代码时,可以使用一组不同的方法:Alt + click and drag
、Alt + Shift + click and drag
、Alt + Shift + arrow keys
等等。一种特定的方法,按住Alt键并单击并拖动不起作用。具体地说,它确实是select,但是在您按一次escape或space键之前,键入是不起作用的。对于Alt + Shift + click and drag
,它工作得很好。
我测试了AvalonEdit
示例项目,并制作了自己的简单示例,它工作得很好。当我将测试AvalonEdit
窗口放在Window
控件中,而不是放在停靠在停靠管理器中的UserControl
中时,它工作得很好。因此,在AvalonDock
中拥有AvalonEdit
窗口与在其他窗口中拥有它之间的交互发生了一些事情。以前有没有人一起使用过这两个控件?我知道它们都用在SharpDevelop
中,所以我希望它们能很好地协同工作。
我发现了另一个问题,AvalonDock
也有一个与alt相关的问题,但它似乎并不完全是我看到的:AvalonDock Now Loses Alt Key Adornments。他们还声称这个问题已经解决了,我甚至不能测试答案中的解决方案,因为我没有/使用Blend。看着这个bug,我认为这更多的是AvalonDock
的问题,而不是AvalonEdit
的问题
发布于 2018-11-14 01:17:10
最后,事实证明AvalonDock
并不是直接的罪魁祸首。真正的问题是一个WPF Ribbon控件,当你按下Alt时,它偷走了焦点。清除功能区上的热键修复了编辑器的交互。
https://stackoverflow.com/questions/53268842
复制相似问题