C# 手机震动时的通话方法

C# 手机震动时的通话方法,c#,windows-phone-8,C#,Windows Phone 8,我已经创建了一个windows phone应用程序,当按下按钮时可以定位用户位置,但我想取消该按钮,并在手机晃动时实现此功能!下面是我迄今为止创建的代码,当应用程序加载时,它将调用一个名为Locate_Me的函数,该函数初始化加速度计 private async void Locate_Me() { if (accelerometer == null) { // Instantiate the Accelerometer.

我已经创建了一个windows phone应用程序,当按下按钮时可以定位用户位置,但我想取消该按钮,并在手机晃动时实现此功能!下面是我迄今为止创建的代码,当应用程序加载时,它将调用一个名为Locate_Me的函数,该函数初始化加速度计

private async void Locate_Me()
    {

        if (accelerometer == null)
        {
            // Instantiate the Accelerometer.
            accelerometer = new Accelerometer();
            accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(20);
            accelerometer.CurrentValueChanged +=
                new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(accelerometer_CurrentValueChanged);
        }

        try
        {
            statusTextBlock.Text = "starting accelerometer.";
            accelerometer.Start();
        }
        catch (InvalidOperationException ex)
        {
            statusTextBlock.Text = "unable to start accelerometer.";
        } 
}
private async void Locate_Me()
{
如果(加速计==null)
{
//实例化加速度计。
加速计=新加速计();
Accelerator.TimeBetweenUpdates=从毫秒开始的时间跨度(20);
加速度计电流值已更改+=
新的事件处理程序(加速计\u CurrentValueChanged);
}
尝试
{
statusTextBlock.Text=“启动加速计。”;
加速度计。开始();
}
捕获(无效操作异常ex)
{
statusTextBlock.Text=“无法启动加速计。”;
} 
}

那么,我该如何制作onShaken函数呢?

第一步:从microsoft站点下载Shake手势库。将ShakeGetures.dll添加到项目中。 现在,你很容易就能察觉到摇晃的手势。以下是您可以使用的代码:

 //constructor of page register event handler for shake
 public Page1()
    {
        InitializeComponent();
            // register shake event
        ShakeGesturesHelper.Instance.ShakeGesture +=new 
           EventHandler<ShakeGestureEventArgs>(Instance_ShakeGesture);

            // optional, set parameters
            ShakeGesturesHelper.Instance.MinimumRequiredMovesForShake = 2;

            // start shake detection
            ShakeGesturesHelper.Instance.Active = true;
    }
    private void Instance_ShakeGesture(object sender, ShakeGestureEventArgs e)
    {
      //call your method
    }
//抖动的页面注册事件处理程序的构造函数
公共页1()
{
初始化组件();
//寄存器抖动事件
ShakeGesturesHelper.Instance.Shake手势+=新建
EventHandler(实例_);
//可选,设置参数
ShakeGesturesHelper.Instance.MinimumRequiredMovesForShake=2;
//启动抖动检测
ShakeGesturesHelper.Instance.Active=true;
}
私有void实例(对象发送方,ShakeGestureEventArgs e)
{
//调用你的方法
}
这是您需要的最小代码。为我工作