Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows中的自定义边缘滑动事件(用于底部边缘)_C#_Windows_Uwp - Fatal编程技术网

C# Windows中的自定义边缘滑动事件(用于底部边缘)

C# Windows中的自定义边缘滑动事件(用于底部边缘),c#,windows,uwp,C#,Windows,Uwp,我想打开一个应用程序或做一些底部滑动,那么我可以做什么来获得该事件?是这样的: 我尝试在UWP应用程序中使用该类,它为和提供事件。但当我在屏幕边缘滑动时,没有触发任何事件 在MainPage.xaml.cs中: public MainPage() { this.InitializeComponent(); //ApplicationView.GetForCurrentView().TryEnterFullScreenMode(); EdgeGesture gestur

我想打开一个应用程序或做一些底部滑动,那么我可以做什么来获得该事件?是这样的:

我尝试在UWP应用程序中使用该类,它为和提供事件。但当我在屏幕边缘滑动时,没有触发任何事件

在MainPage.xaml.cs中:

public MainPage()
{
    this.InitializeComponent();

    //ApplicationView.GetForCurrentView().TryEnterFullScreenMode();

    EdgeGesture gesture = EdgeGesture.GetForCurrentView();

    gesture.Starting += Gesture_Starting;
    gesture.Completed += Gesture_Completed;
    gesture.Canceled += Gesture_Canceled;
}

private void Gesture_Canceled(EdgeGesture sender, EdgeGestureEventArgs args)
{
    throw new NotImplementedException();
}

private void Gesture_Completed(EdgeGesture sender, EdgeGestureEventArgs args)
{
    throw new NotImplementedException();
}

private void Gesture_Starting(EdgeGesture sender, EdgeGestureEventArgs args)
{
    throw new NotImplementedException();
}


不知道我是否做错了什么,能帮我吗?或者有其他方法可以做到这一点吗?

在桌面模式下,UWP应用程序是一个窗口应用程序,很难捕获屏幕边缘滑动事件,
edgegstrue
可以在平板模式下工作

<>为了适应不同情况下的滑动需求,可以考虑使用<代码> StururreCurngisher < /C> > < /P> 在这里,我会给你一个简单的页面作为参考


私人手势识别器\u手势识别器;
指针eventhandler指针pressedeventhandler;
指针eventhandler指针movedeventhandler;
指针eventhandler指针releasedeventhandler;
PointerEventHandler PointerCanceledEventHandler;
私人双星=0;
私有双移动=0;
公共手势页面()
{
this.InitializeComponent();
_GestureRecognizer=新的GestureRecognizer();
_GestureRecognizer.GestureSettings=GestureSettings.OperationTranslateY;
_GestureRecognizer.ManufactionStarted+=\u GestureRecognizer\u ManufactionStarted;
_GestureRecognizer.OperationUpdated+=\u GestureRecognizer\u OperationUpdated;
_GestureRecognizer.OperationCompleted+=\u GestureRecognizer\u OperationCompleted;
PointerPressedEventHandler=新的PointerEventHandler(\u PointerPressed);
PointerMovedEventHandler=新的PointerEventHandler(\u PointerMoved);
PointerReleasedEventHandler=新的PointerEventHandler(\u PointerReleased);
PointerCanceledEventHandler=新的PointerEventHandler(\u PointerCanceled);
this.AddHandler(UIElement.PointerPressedEvent,PointerPressedEventHandler,true);
this.AddHandler(UIElement.PointerMovedEvent,PointerMovedEventHandler,true);
this.AddHandler(UIElement.PointerReleasedEvent,PointerReleasedEventHandler,true);
this.AddHandler(UIElement.PointerCanceledEvent,PointerCanceledEventHandler,true);
}
私有无效\u手势识别器\u操作已启动(手势识别器发送器,操作已启动EventArgs)
{
startY=参数位置Y;
}
私有void\u gestureRecognitor\u操作已更新(gestureRecognitor发送方,操作已更新EventTargets参数)
{
moveY+=Math.Abs(args.Delta.Translation.Y);
}
私有void\u gestureRecognitor\u操作已完成(gestureRecognitor发送方,操作已完成事件args args)
{
如果(移动>=50)
{
//可以理解为滑动一段距离
if(startY=Window.Current.Bounds.Height-10)
{
//从头到脚
}
startY=0;
MoveY=0;
}
}
private void\u PointerPressed(对象发送方,PointerRoutedEventArgs e)
{
var指针=e.GetCurrentPoint(此);
_GestureRecognitor.ProcessDownEvent(指针);
}
私有void_PointerMoved(对象发送方,PointerRoutedEventArgs e)
{
var指针=e.GetIntermediatePoints(此);
_ProcessMoveEvents(指针);
}
private void\u PointerCanceled(对象发送方,PointerRoutedEventArgs e)
{
var指针=e.GetCurrentPoint(此);
_手势识别器。CompleteGesture();
}
私有void\u PointerReleased(对象发送方,PointerRoutedEventArgs e)
{
var指针=e.GetCurrentPoint(此);
_ProcessUpEvent(指针);
}
手指、鼠标和笔在点击屏幕时触发
指针
相关事件。上述代码的目的是捕获
指针
事件,并将其传递给
手势识别器
进行处理

这是你的电话号码

致以最良好的祝愿