我正在使用基于MonoGame的游戏,它使用XAML作为界面。然而,我有一个问题,确保空格键不会触发XAML接口(它用于游戏中的其他内容)。现在我有一个包含项目的gridview。当我点击空间时,它突出了一个我不希望它做的元素。我已经知道它并没有真正选择该项目,但不幸的是无法阻止它突出显示它(然后使用箭头键切换项目)。防止通过键盘XAML突出显示/选择?
下面是一些代码,这是否:
<GridView HorizontalAlignment="Left" Name="Powers" Margin="10,10,0,0" VerticalAlignment="Top" Width="229" Height="163" SelectionMode="None">
<GridView.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Foreground="white" Width="50"></TextBlock>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</GridView.GroupStyle>
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<VariableSizedWrapGrid MaximumRowsOrColumns="4" Orientation="Horizontal" ></VariableSizedWrapGrid>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
</GridView>
有没有什么办法来防止通过键盘项目的highliting?我希望能够将它重新连接到换档键,但一次只能一步。
任何帮助,非常感谢!
编辑:我捅了这个。我已经选择以我想要的方式工作。然而,问题在于,当我点击空间时,它突出显示并“检查”我选择的网格物品,这不是我想要的。换句话说,我将它突出显示,就好像选择了紫色一样,但是当我点击空间时(为了在我的游戏中跳跃),它会在项目周围放置一个白色框,并在角落中放置一个“Check”。我想避免这种情况。我正在提出这个问题的更高点。真的很想知道如何解决这个问题。
GridView是否具有FocusVisualStyle属性?如果是,那么'FocusVisualStyle =“{x:Null}”'help? – idursun
也许这有助于:http://stackoverflow.com/questions/3046988/wpf-datagrid-disable-selected-row-styles-or-row-selecting – dognose
嗯,似乎没有给我在标签中的选项。不过,我确实需要一种视觉风格,但我不希望它被空格键触发。 –