如何在屏幕上单击/触摸时暂停MediaElement - UWP

时间:2017-10-16 10:31:14

标签: c# uwp mediaelement

我必须使用MediaElement播放视频。我想在用户点击屏幕时暂停视频。我发现MediaElement上有双击事件,但无法找到任何单个触摸事件。我怎么能这样做?

<MediaElement Name="videoMediaElement" AreTransportControlsEnabled="True" Stretch="Fill" 
  MediaOpened="videoMediaElement_MediaOpened" CurrentStateChanged="Media_State_Changed">
    <MediaElement.TransportControls>
        <MediaTransportControls Background="Red" Foreground="White" 
          IsStopButtonVisible="True" IsStopEnabled="True" IsTextScaleFactorEnabled="True" 
          IsPlaybackRateEnabled="True" IsPlaybackRateButtonVisible="True" 
          IsFastForwardButtonVisible="True" IsFastForwardEnabled="True" 
          IsFastRewindButtonVisible="True" IsFastRewindEnabled="True"/>
    </MediaElement.TransportControls>
</MediaElement>
private async void Media_State_Changed(object sender, RoutedEventArgs args)
{
    if (videoMediaElement.CurrentState == MediaElementState.Paused)
    {
    }
}

1 个答案:

答案 0 :(得分:2)

您可以使用大量活动,例如MouseLeftButtonDownTouchDown个事件。就这么简单:

private void element_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
    ((MediaElement)sender).Pause();
}

private void element_TouchDown(object sender, System.Windows.Input.TouchEventArgs e)
{
    ((MediaElement)sender).Pause();
}

通过@JetChopper:

private void element_PointerPressed(object sender, PointerRoutedEventArgs e)
{
    ((MediaElement)sender).Pause();
}
相关问题