1 回答
TA贡献1906条经验 获得超3个赞
看来这个行为——是否需要按FN,与安装该应用程序的设备有关。当我在PC上运行时,我只需要按F3,但它需要在表面上按FN。如果你还想改变它,我在下面有一个解决方法,您可以在页面(例如MainPage)上注册加速器事件。
public MainPage()
{
this.InitializeComponent();
Window.Current.Dispatcher.AcceleratorKeyActivated += AccelertorKeyActivedHandle;
}
private void AccelertorKeyActivedHandle(CoreDispatcher sender, AcceleratorKeyEventArgs args)
{
if (args.EventType.ToString().Contains("Down"))
{
if (args.VirtualKey == Windows.System.VirtualKey.F3)
{
// do something you want
}
}
}
UWP应用程序窗口最小化时,当前窗口没有焦点,因此设置的快捷键不会响应。但系统有默认的快捷键(例如Fn + F11)可以播放或暂停媒体。如果你想响应系统快捷键,需要允许backgroundMediaPlayback。你可以尝试一下官方的demo,也可以通过键盘自带的媒体按钮来控制。
更新:
根据官方示例,如果要使用MediaElement来播放,需要设置MediaPlay和MediaPlaybackList来绑定播放列表。这样的话,似乎可以通过系统默认的快捷键来控制。实际上起作用的是MediaPlayer。对于更详细的信息,还需要阅读官方demo。
XAML:
<MediaElement Name="mediaPlayerElement"
AreTransportControlsEnabled="True"
Stretch="UniformToFill" Height="100" Width="400">
隐藏代码:
private void MainPage_Loaded(object sender, RoutedEventArgs e)
{
var source = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/xxx"));
// Create a configurable playback item backed by the media source
var playbackItem = new MediaPlaybackItem(source);
MediaPlayer player = new MediaPlayer();
MediaPlaybackList lists = new MediaPlaybackList();
lists.Items.Add(playbackItem);
player.Source = lists;
}
- 1 回答
- 0 关注
- 157 浏览
添加回答
举报