UWP MediaElementPlayer FullWindow 的自定义处理程序

Custom Handler for UWP MediaElementPlayer FullWindow

我想为 MediaPlayerElement 中的 FullWindowButton 创建一个自定义处理程序。我创建了一个类似于 Microsoft 示例项目的 CustomMediaTransportControls。我通过在我的代码中执行以下操作为 FullWindowButton 创建了一个事件处理程序:

Button fullWindowButton = GetTemplateChild("FullWindowButton") as Button;
fullWindowButton.Click += FullWindowButton_Click;

事件在进入和离开 FullWindowMode 时触发,但我不确定如何防止 MediaPlayerElement 处理 FullWindowButton 更改。有没有办法做到这一点,或者我应该创建一个单独的自定义 FullWindow 按钮?

official documentation 中有关于手动实施和修改 CustomMediaTransportControls 的很好的指南。

我建议您隐藏默认的全屏按钮,然后添加一个具有所需功能的自定义应用栏按钮,因为虽然可以阻止执行默认操作(通过清除所有事件处理程序),但是这不是 "clean" 解决方案。

您可以将自定义按钮添加到模板中的 CommandBar,然后在 OnApplyTemplate 覆盖中附加自定义 Click 处理程序。