我已经使用 AvalonDock (2.0) 有一段时间了,它是在 IDE 中管理文档的关键。在过去一个月左右的时间里,我注意到Alt在 AvalonDock 中的控件不再显示按键装饰,尽管Alt按键命令按预期执行。请参阅下图,其中Alt关键装饰显示在菜单中,但不显示 AvalonDock 内的按钮:
这个问题特别有趣的是,它似乎是由环境设置或条件触发的。
如本视频所示(2:07),alt 键装饰用于 AvalonDock 中的控件。但是,如果我现在使用我在该视频中使用的完全相同的可执行文件,则 alt 键装饰不起作用。
我目前使用的是 build 2.0.1746,但我也尝试了 build 2.0.2000(使用 Xceed 命名空间)并发现了同样的问题。我还尝试了使用Xceed Extended WPF Toolkit打包的版本,发现问题仍然存在。
我还构建了一个非常简单的测试应用程序,它加载了几个类型的文档Item
,其中Item
是一个带有Name
属性的简单类:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1"
xmlns:avalonDock="clr-namespace:Xceed.Wpf.AvalonDock;assembly=Xceed.Wpf.AvalonDock"
xmlns:avalonDockLayout="clr-namespace:Xceed.Wpf.AvalonDock.Layout;assembly=Xceed.Wpf.AvalonDock"
xmlns:avalonDockControls="clr-namespace:Xceed.Wpf.AvalonDock.Controls;assembly=Xceed.Wpf.AvalonDock"
Title="MainWindow" Height="500" Width="500">
<Window.Resources>
<ResourceDictionary>
<DataTemplate DataType="{x:Type local:Item}">
<StackPanel Orientation="Vertical">
<Label Content="Item:" />
<TextBox Text="{Binding Name}"/>
<Button Content="_ClickMe" />
</StackPanel>
</DataTemplate>
</ResourceDictionary>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<avalonDock:DockingManager Grid.Row="0" DocumentsSource="{Binding}">
<avalonDockLayout:LayoutRoot>
<avalonDockLayout:LayoutPanel Orientation="Horizontal">
<avalonDockLayout:LayoutDocumentPane/>
</avalonDockLayout:LayoutPanel>
</avalonDockLayout:LayoutRoot>
</avalonDock:DockingManager>
<Button Grid.Row="1" Content="_Test" />
</Grid>
</Window>
即使使用这个简单的应用程序,AvalonDock 外部的按钮也会Alt显示关键装饰,但 AvalonDock内的控件按钮不会显示。Test
ClickMe
我还在 AvalonDock codeplex 网站上发布了这个问题,但似乎很少有响应活动。我还在Extended Toolkit codeplex 网站上发布了这个问题。
关于如何纠正或解决此问题的任何想法?