按钮被执行时执行操作和按钮被释放时的另一个操作

问题描述:

我正在使用视觉工作室来创建Windows IoT应用程序。在应用程序的图形用户界面上有一个按钮,当按下鼠标或按下某个键时,它会执行一个动作,在这种情况下,文本框将更改其文本并运行电机。当按钮被释放时,文本框改变其文本,电机停止。按钮被执行时执行操作和按钮被释放时的另一个操作

我在.cs文件中创建了一个.xml文件和button_holding事件的按钮,但是这不执行任何操作。

在应用程序的GUI有一个按钮,当与 点击鼠标按住或一个正在按下的按键会执行一个动作,在这种情况下,一个文本框将更改其文本并运行一个电机 。当释放按钮 时,文本框将更改其文本并停止电机。

您可以使用PointerPressedEvent和PointerReleasedEvent来实现它。这是代码适用于我:

public MainPage() 
{ 
    this.InitializeComponent(); 
    myButton.AddHandler(PointerPressedEvent, new PointerEventHandler(myButton_PointerPressed), true); 
    myButton.AddHandler(PointerReleasedEvent, new PointerEventHandler(myButton_PointerReleased), true); 
} 

private void myButton_PointerPressed(object sender, PointerRoutedEventArgs e) 
{ 
    myText.Text = "Running..."; 
} 

private void myButton_PointerReleased(object sender, PointerRoutedEventArgs e) 
{ 
    myText.Text = "Stopped"; 
} 

您可以使用控股事件让传统的WinForms类似的MouseUp和的MouseDown,像这样

private void Button_Holding(object sender, HoldingRoutedEventArgs e) 
     { 
      if (e.HoldingState == Windows.UI.Input.HoldingState.Started) 
      { 
       //do things when button on hold 
      } 
      else if (e.HoldingState == Windows.UI.Input.HoldingState.Completed || 
       e.HoldingState == Windows.UI.Input.HoldingState.Canceled) 
      { 
       //do things when button release 
      } 
     }