在我的应用中,我有一个主页和另外两个页面,所以我想从一个页面导航到另一个页面,反之亦然,当我从右向左水平滑动时,当我从左向右水平滑动时它应该导航到主页。
假设,我们在主页上从右向左滑动(主页---> Page1,再次刷卡---> Page2,再次刷卡---> Page1 ......就像那样.. ...)如果我从左向右滑动,则应在所有页面上导航到主页。如何在Windows Phone 8应用程序中执行此操作?
我的代码:
if (e.HorizontalVelocity < 0) //when it is true it should navigate to next index value
{
try
{
Pivot_Main.SelectedIndex++;// here every time it's showing the same index value it is not incrementing
switch (Pivot_Main.SelectedIndex)
{
case 0:
Pivot_Main.SelectedIndex = 0;
txtBlock_Pivot_Heading.Text = "Temperature";
var brush = new SolidColorBrush(Color.FromArgb(0xFF, 0x8C, 0xC6, 0x3F));
b_celcius = true;
temperature_Page_Clear();
txtBlock_OptText.Text = "ºC";
btn_OptText.Content = "ºC";
Grid_PivotHeading.Background = brush;
Canvas_Home.Background = brush;
Canvas_DisplayName.Width = 55;
// btn_OptText.SetValue(Canvas.LeftProperty, 380.0);
break;
case 1:
Pivot_Main.SelectedIndex = 1;
txtBlock_Pivot_Heading.Text = "Length";
length_Page_Clear();
b_meter = true;
}
}
}
请帮助我,真诚的帮助表示赞赏。
答案 0 :(得分:0)
这里有多个选项。
如果您可以设法在一个页面中执行操作,那么Pivot
或Panorama
控件就足够了。
此外,如果您需要每个页面都不同,并且您希望使用NavigationService.Navigate()
从一个页面转到另一个页面,那么您有一个名为Flick
的事件。您可以设法处理左/通过此事件HorizontalVelocity
和VerticalVelocity
直接浏览此内容。
要使用Flick Gesture,您需要在xaml w.r.t中添加此代码。到您的UI元素:
<toolkit:GestureService.GestureListener>
<toolkit:GestureListener Flick="OnFlick"/>
</toolkit:GestureService.GestureListener>
并在.cs中处理程序:
private void OnFlick(object sender, FlickGestureEventArgs e)
{
// User flicked towards left
if (e.HorizontalVelocity < 0)
{
//your respective navigation to other page
}
// User flicked towards right
if (e.HorizontalVelocity > 0)
{
//your respective navigation to other page
}
您可以获得的手势支持详情here