如何在单击/触摸屏幕时暂停MediaElement - UWP
问题描述:
我必须使用MediaElement播放视频。我想在用户点击屏幕时暂停视频。我发现MediaElement上有双击事件,但找不到任何单一的触摸事件。我怎样才能做到这一点?如何在单击/触摸屏幕时暂停MediaElement - UWP
<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)
{
}
}
答
有很多的事件,您可以使用该如MouseLeftButtonDown
或TouchDown
事件。它是那样简单:
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();
}
我只想要触摸事件的video.Is以上,可以与这些事件? – user2431727
我不确定你的意思是*“on above”*,但我建议你试试看。 –
只需使用PointerPressed事件。它适用于任何输入设备。 –