将元素添加到标准传输控件
本文关键字:传输 控件 标准 元素 添加 | 更新日期: 2023-09-27 18:36:44
我想将选择器添加到Windows通用应用程序的标准传输控件中,以便我可以选择视频的质量。
我尝试修改定义标准控件的 xaml,但控件未受影响,标准控件仍然被释放。
具有标准传输控件的媒体元素:
<MediaElement AreTransportControlsEnabled="True">
</MediaElement>
由于您想在标准传输控件中添加选择器并选择视频的质量,我认为仅编辑模板是不够的。
若要添加或修改传输控件的功能,必须创建一个派生自 MediaTransportControls 的新类。
创建派生自 MediaTransportControls 的新类:
- 向项目添加新的类文件。
- 修改类代码以派生自 MediaTransportControls 类。
- 将默认样式从 MediaTransportControls 样式和模板复制到项目中的资源字典中。这是您修改的样式和模板。
- 将样式的"目标类型"更改为新的自定义控件类型。
- 设置自定义类的默认样式键。
- 将 MediaElement 添加到 XAML 标记,并向其添加自定义传输控件。
有关详细信息,请参阅 创建自定义传输控件以及 GitHub 中的官方媒体传输控件示例。
打开 Blend 或在 VS2015 上单击查看->其他 Windows-> 文档大纲(ctrl+alt+T)
在 xaml 中添加媒体传输控件
<MediaTransportControls />
不转到文档大纲并右键单击媒体传输控件 -> 编辑模板 ->编辑副本(我有一个 styles.xaml,我选择把它放在那里,你可以点击确定)
现在,文档大纲视图更改为媒体传输控件模板,您可以将其更改为您的喜好。我在中间添加了播放/暂停。
在 Blend 中执行此操作可以更好地访问,例如编辑状态。
完成自定义后,您可以像这样将其添加到MediaElement中
<MediaElement x:Name="mediaElement" AreTransportControlsEnabled="True" >
<MediaElement.TransportControls>
<MediaTransportControls Style="{StaticResource MediaTransportControlsStyle1}"/>
</MediaElement.TransportControls>
</MediaElement>