【发布时间】:2012-12-21 16:38:34
【问题描述】:
由于某种原因,我无法让处理程序触发点击功能。当我单击时,我会听到“bing”的声音,好像我做错了什么。这是一个 Windows 8 应用程序全屏。我觉得好像整个屏幕都无法点击鼠标。这是一个嵌套在 XAML 接口内的 MonoGame 项目。控制游戏“菜单”的代码如下:
<StackPanel Height="768" VerticalAlignment="Bottom">
<ListView Name="InGameMenu" Width="300" HorizontalAlignment="Stretch" Background="Orange" Height="auto" Padding="30 0 0 0">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button FontSize="40" Content="{Binding}" Click="MenuElementSelected" IsEnabled="True"></Button>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListView>
</StackPanel>
加载到列表中的元素只是字符串。关于可能发生的事情有什么想法吗?事件处理程序是
private void MenuElementSelected(object sender, RoutedEventArgs e)
{
Button obj = sender as Button;
switch ((string)obj.Content)
{
case "Resume":
{
_game.resume();
break;
}
case "Restart":
{
_game.restart();
break;
}
}
}
但它甚至不会触发内部的断点。
非常感谢任何帮助!
编辑:
整个东西坐落在一个 SwapChainBackgroundPanel 将 MonoGame 转置到界面上。我还不确定,但这可能是问题的一部分。
【问题讨论】:
-
我会尝试为您的按钮命名,然后以编程方式将处理程序附加到后面代码中的 Click 事件。然后,手动调用 Click 事件并尝试单步执行。
-
不幸的是,这不起作用。同样的问题。
-
我在一个页面上遇到了类似的问题我在 StackPanel 中有一个按钮,它没有触发事件处理程序。
标签: c# xaml windows-8 monogame