是否可以在WPF浏览器应用程序中添加媒体元素?

时间:2019-04-28 04:05:24

标签: c# visual-studio

我正在Visual Studio中制作一个WPF浏览器应用程序(在Internet Explorer中运行的应用程序),并且在上述项目的其中一个页面中,我想添加一个TabControl,在其中可以在每个选项卡中添加添加不同类型的媒体,我什么都没做,MediaElement类遇到了这个问题,我编写了一个“接口”来打开mp3文件,但是没有用。

我已经在一个单独的项目中尝试过,并且可以正常工作(添加了“ pause”和“ forward”按钮),因此我实际上是在认为浏览器可能无法打开这些文件。这是我的代码:

    public Page8()
    {
        InitializeComponent();
        reproduciendo(false); //I've coded this to only have the open button enabled
    }

    private void reproduciendo(bool v)
    {
        bPlay.IsEnabled = v;
        bStop.IsEnabled = v;
        bBack.IsEnabled = v;
        bForward.IsEnabled = v;
    }

    private void BOpen_Click(object sender, RoutedEventArgs e)
    {
        System.Windows.Forms.OpenFileDialog ofd = new System.Windows.Forms.OpenFileDialog();
        ofd.Filter = "Audio Files (*.mp3)|*.mp3";
        if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
        {
            mediaElement.Source = new Uri(ofd.FileName);
            bPlay.IsEnabled = true;
        }
    }

    private void BPlay_Click(object sender, RoutedEventArgs e)
    {
        reproduciendo(true);
        if (bPlay.Content.ToString() == "Reproduce")
        {
            mediaElement.Play();
            bPlay.Content = "Pausa";
        }
        else
        {
            mediaElement.Pause();
            bPlay.Content = "Reproduce";
        }
    }

    private void BStop_Click(object sender, RoutedEventArgs e)
    {
        mediaElement.Stop();
        bPlay.Content = "Reproduce";
        reproduciendo(false);
        bPlay.IsEnabled = true;
    }

    private void BBack_Click(object sender, RoutedEventArgs e)
    {
        mediaElement.Position = mediaElement.Position + TimeSpan.FromSeconds(10);
    }

    private void BForward_Click(object sender, RoutedEventArgs e)
    {
        mediaElement.Position = mediaElement.Position - TimeSpan.FromSeconds(10);
    }
}

0 个答案:

没有答案