【问题标题】:GridView crashes on touchscreen works with mouse触摸屏上的 GridView 崩溃与鼠标一起使用
【发布时间】:2013-04-19 14:09:29
【问题描述】:

我正在开发一个 Windows 应用商店应用程序 (C#/XAML)。我在 UserControl 中有一个默认的 GridView 控件。完整代码如下:

<GridView Grid.Column="1" Grid.Row="2" SelectedIndex="{Binding Priority, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center" >
               <GridView.ItemsPanel>
                    <ItemsPanelTemplate>
                        <WrapGrid Orientation="Horizontal"/>
                    </ItemsPanelTemplate>
                </GridView.ItemsPanel>
                <GridViewItem>
                    <Border Width="30" Height="30" Background="White" BorderThickness="2" BorderBrush="#FF1BA1E2">
                        <TextBlock Text="!" Foreground="#FF1BA1E2" FontSize="15" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                    </Border>
                </GridViewItem>
                <GridViewItem>
                    <Border Width="30" Height="30" Background="White" BorderThickness="2" BorderBrush="#FFFFC800">
                        <TextBlock Text="!!" Foreground="#FFFFC800" FontSize="15" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                    </Border>
                </GridViewItem>
                <GridViewItem>
                    <Border Width="30" Height="30" Background="White" BorderThickness="2" BorderBrush="#FFFF0000">
                        <TextBlock Text="!!!" Foreground="#FFFF0000" FontSize="15" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                    </Border>
                </GridViewItem>
            </GridView>

整个事情都非常适合鼠标。但是,当我提交应用程序时,我收到了一个崩溃报告,告诉我这个 GridView 在触摸屏设备上崩溃了。因此,我使用模拟器进行了测试,当您尝试触摸任何 GridViewItem 时,应用程序确实崩溃了!我在这里没有做任何有趣的事情。默认的 GridView 似乎有一个错误。有什么可以做的吗?

Edit1:作为参考,这里是应用程序:http://apps.microsoft.com/windows/en-US/app/1cd03a7e-03c1-4625-b021-fb22b3ec999b 单击“编辑任务”按钮可以看到相关的网格视图。

Edit2:我尝试创建一个全新的 UserControl,里面只有这个 GridView。还是撞车了!用类似的 ListBox 替换了 GridView - 结果相同!但是,新应用程序中的类似条件(UserControl 作为某些事件的边框的子项加载)工作得非常好!与我的应用程序相关的内容?可能是什么?

【问题讨论】:

  • 无法重新生成错误,在触摸模式下的模拟器中一切正常。
  • @Xyroid 你有什么建议?我应该尝试创建一个空白应用程序并查看是否可以重新创建问题吗?如果空白应用程序出现问题,这会是机器特定的编译器问题吗?我会尝试并报告。
  • 是的,尝试创建一个空白应用并在不同的机器上查看。

标签: c# xaml windows-8 microsoft-metro winrt-xaml


【解决方案1】:

我发现了这次崩溃 但如果没有更多细节,我不能说什么。我不确定问题出在 xaml 中。如何添加事件?你如何改变状态?

【讨论】:

  • 我在整个 UserControl 中没有任何事件。这只是双向绑定。即使没有绑定,也会发生崩溃。我收到的消息(在模拟器内)说当前附加的调试器无法处理异常。可能的新调试器是 VS2012 的新实例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多