我有网格和Scrollviewer的页面:
<Grid x:name="mainGrid">
...
<ScrollViewer Name="mainScroller" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollMode="Enabled">
...
</ScrollViewer>
...
</Grid>
我想为垂直触摸移动做手势处理(用手指向上移动),但我想通过水平触摸移动来保持滚动mainScroller内容。
我尝试添加for mainGrid ManipulationCompleted =“Grid_ManipulationCompleted”:
private void Grid_ManipulationCompleted(object sender, ManipulationCompletedRoutedEventArgs e)
{
if (e.Cumulative.Translation.Y < -50 && e.Velocities.Linear.Y<1000)
{
...make some action...
}
}
最终效果是,如果我对mainGrid使用ManipulationMode =“TranslateY”,那么垂直触摸移动工作,但水平滚动不工作,而当我不使用它时,水平滚动工作,但垂直触摸不移动。是否有可能使这两个功能都有用? 抱歉我的英文。
答案 0 :(得分:0)
了解您的场景可能会有所帮助,但一般情况下,您不应该创建可能与内置手势冲突的新手势,就像您提出的那样。
John Wiese
微软 - 高级技术布道者
jwiese@microsoft.com
@johnwiese