WP8:在全景/透视中导航时触发按钮事件
Posted
技术标签:
【中文标题】WP8:在全景/透视中导航时触发按钮事件【英文标题】:WP8: Button events triggering when navigating in panorama/pivot 【发布时间】:2013-10-17 13:47:05 【问题描述】:我目前正在为 WP8 开发应用程序,但在导航全景或透视视图时遇到问题。
例如: 我有一个全景图,它本身在每个页面上都包含一些按钮。如果我尝试在这些页面之间导航,有时我会不小心设法为某些按钮引发点击事件。
在尝试重现该错误后,我发现这主要发生在我短距离滑动时。如果我长距离滑动,错误不会出现,也不会引发任何事件。
我正在使用命令绑定进行事件处理,我是否应该更改它?我真的很想弄清楚这一点,但我仍然找不到除服务之外的其他方法,如果发生滑动,它会禁用所有事件。
提前感谢您能给我的任何帮助!
PS:这是一些代码,不知道它是否/如何有帮助:
<phone:Panorama x:Name="Panorama" Title="Binding LocalizationService.Resources.ApplicationTitle">
<phone:PanoramaItem Header="Binding LocalizationService.Resources.MainPage_Header" HeaderTemplate="StaticResource PanoramaItemHeaderTemplate">
...
<Button Command="Binding CmdNavigateToZipSearch" Style="StaticResource PizzaButtonAccentStyle" Width="214" Height="172">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Image Grid.Row="0" Source="/Assets/icon_plz-suche.png" Stretch="Uniform" Height="77" Margin="1,6,0,0" />
<TextBlock Grid.Row="1" Text="Binding LocalizationService.Resources.MainPage_ZipSearch_Label" Style="StaticResource PizzaTextContrastStyle" />
</Grid>
</Button>
...
【问题讨论】:
.. 而您正在执行此操作的代码是...? ...添加了一些代码,希望它有帮助,不要认为它有。 ;) 在您要求执行命令的代码之前,我可以粘贴它,但它不会影响错误,因为无论绑定什么命令都会发生错误 【参考方案1】:在内部 (AFAIK) 按钮上的命令是基于单击事件触发的。不要使用点击/命令事件,而是使用 EventToCommand 解决方案将您的命令绑定到 Tap 事件,因为由于它的移动阈值,这不能与滑动同时触发。
【讨论】:
以上是关于WP8:在全景/透视中导航时触发按钮事件的主要内容,如果未能解决你的问题,请参考以下文章
Gridview动态绑定数据 分页问题(换页后,显示没有数据)?