与AvalonDock中的AvalonEdit窗口进行交互

时间:2018-11-12 19:28:04

标签: avalondock avalonedit

在我的应用程序中,我们将AvalonDock用作对接管理器,并具有各种不同的窗口。其中之一包含AvalonEdit编辑器。我们最近注意到了一个特定的交互问题,我发现这是由AvalonDock引起的。

尝试阻止选择代码时,可以使用多种不同的方法:Alt + click and dragAlt + Shift + click and dragAlt + Shift + arrow keys,依此类推。一种特定的方法Alt +单击并拖动无效。具体来说,它确实可以选择,但是键入只有在按一次Escape键或空格键后才起作用。使用Alt + Shift + click and drag可以正常工作。

我测试了AvalonEdit示例项目,并制作了自己的简单示例,并且效果很好。当我将测试AvalonEdit窗口放置在Window控件中而不是停靠在停靠管理器中的UserControl内时,它可以正常工作。因此,将AvalonEdit窗口中的AvalonDock窗口与其他窗口中的交互正在进行。以前有没有人同时使用这两个控件?我知道它们都在SharpDevelop中使用,所以我希望它们可以很好地协同工作。

我发现了另一个问题,该问题也与AvalonDock有一个与alt有关的问题,但似乎与我所看到的不完全相同:AvalonDock Now Loses Alt Key Adornments。他们还声称问题已得到解决,因为我没有/没有使用Blend,我什至无法测试答案中的解决方案。查看该错误使我认为AvalonDock的问题更多,而不是AvalonEdit

1 个答案:

答案 0 :(得分:0)

最后,事实证明AvalonDock不是直接的罪魁祸首。真正的问题是WPF功能区控件,当您按Alt时,该控件正在窃取焦点。在功能区上杀死快捷键可以修复编辑器之间的交互。