通过自定义MediaTransportControls中的自定义按钮控制MediaElement

时间:2016-02-11 09:40:16

标签: c# win-universal-app mediaelement

从这篇官方文章https://msdn.microsoft.com/en-us/library/windows/apps/mt187271.aspx

我知道如何在自定义MediaTransportControls中创建自定义按钮。 我也知道热点来处理按钮点击(也在文章中)。

但我不知道如何使用我的自定义按钮控制mediaElement。

例如我想要按钮,将位置设置为10秒。 在页面中很容易,mediaElement放在哪里:

private void myButtonInPageDotXaml(object sender, RoutedEventArgs e)
{
    mediaElement.Position = new TimeSpan(0, 0, 10);
}

如何将此功能添加到customMediaTransortControls中的自定义按钮?

修改 我可以在CustomMediaTransportControls中创建公共变量:

public MediaElement me;

之后MainPage.xaml.cs做了类似的事情:

public MainPage()
    {
        this.InitializeComponent();
        customMTC.me = this.mediaElement;//customMTC is CustomMediTransportControlClass
    }

所以,我可以从medieElement类控制CustomMediTransportControl

private void GoToTenButton_Click(object sender, RoutedEventArgs e)
    {
         mediaElement.Position = new TimeSpan(0, 0, 10);
    }

这正是我想要的,但我觉得这不是最明确和最好的解决方案。

1 个答案:

答案 0 :(得分:0)

如果您在“本文档”中定义了MediaTransportControls的模板,则在复制中,当您编辑模板时选择您的按钮,转到事件处理程序并创建一个。