我想在MediaPlayerElement
中为FullWindowButton
提供一个自定义处理程序。 我创建了一个类似于Microsoft示例项目的CustomMediaTransportControls
。 通过在代码中执行以下操作,我为FullWindowButton
创建了一个事件处理程序:
Button fullWindowButton = GetTemplateChild("FullWindowButton") as Button;
fullWindowButton.Click += FullWindowButton_Click;
进入和离开FullWindowMode
时会触发该事件,但我不确定如何防止MediaPlayerElement
处理FullWindowButton
更改。 有没有办法做到这一点,或者我应该创建一个单独的自定义FullWindow
按钮?
在官方文档中有一个关于手动实现和修改CustomMediaTransportControls
的很好的指南。
我建议您隐藏默认的全屏按钮,然后添加具有所需功能的自定义应用栏按钮,因为尽管可以阻止默认操作执行(通过清除所有事件处理程序(,但它不是一个"干净"的解决方案。
可以将自定义按钮添加到模板中的CommandBar
,然后在OnApplyTemplate
替代中附加自定义Click
处理程序。