我正在尝试使用 c# 和 xaml 制作一个简单的 Windows 8 Metro 游戏。我一直无法触发 KeyDown 事件。我认为这可能是因为网格没有焦点。如果是这种情况,我将如何在我的代码中赋予网格焦点?感谢您的帮助。
这是我的代码:xaml 中的网格
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"
KeyDown="Grid_KeyDown" KeyUp="Grid_KeyUp" x:Name="myGrid"
>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<TextBlock FontSize="30" Margin="10" x:Name="statusBox">Status</TextBlock>
</StackPanel>
</StackPanel>
和 c# 中的事件处理程序
private void Grid_KeyDown(object sender, KeyRoutedEventArgs e)
{
statusBox.Text = "Key down";
}