C# 如何从其他窗体使用windows media player?

C# 如何从其他窗体使用windows media player?,c#,forms,radio-button,windows-media-player,axwindowsmediaplayer,C#,Forms,Radio Button,Windows Media Player,Axwindowsmediaplayer,因此我有两种形式,一种叫做“musica”,它播放音乐(这种形式是不可见的),另一种叫做“Form1”,它提供了使用单选按钮停止和启动音乐的选项 问题是单选按钮工作正常,但即使我点击“radionButton2”,并且如果我在“musica\u load”上使用“stop()”功能,视频仍会继续播放,因此我认为问题也不在这里 我犯了什么错 表格1代码: musica mus = new musica(); private void radioButton1_CheckedChanged(obje

因此我有两种形式,一种叫做“musica”,它播放音乐(这种形式是不可见的),另一种叫做“Form1”,它提供了使用单选按钮停止和启动音乐的选项

问题是单选按钮工作正常,但即使我点击“radionButton2”,并且如果我在“musica\u load”上使用“stop()”功能,视频仍会继续播放,因此我认为问题也不在这里

我犯了什么错

表格1代码:

musica mus = new musica();
private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {
        if (radioButton1.Checked == true)
        {
            mus.play();

        }
    }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)
    {
        if (radioButton2.Checked == true)
        {
            mus.stop();

        }
    }
音乐代码:

    public void play()
    {
            axWindowsMediaPlayer1.Ctlcontrols.play();
    }
    public void stop()
    {
            axWindowsMediaPlayer1.Ctlcontrols.stop();
    }

//Form1.cs

    musica mus;
    public Form1()
    {
        InitializeComponent();
        mus = new musica();
    }

    private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {

        if (radioButton1.Checked == true)
        {
            mus.Play(); ;
        }
    }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)
    {
        if (radioButton2.Checked == true)
        {
            mus.Stop();
        }
    }
    public musica()
    {
        InitializeComponent();
    }

    public void Play()
    {
        MessageBox.Show("Play");
    }

    public void Stop()
    {
        MessageBox.Show("Stop");
    }
//Musica.cs

    musica mus;
    public Form1()
    {
        InitializeComponent();
        mus = new musica();
    }

    private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {

        if (radioButton1.Checked == true)
        {
            mus.Play(); ;
        }
    }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)
    {
        if (radioButton2.Checked == true)
        {
            mus.Stop();
        }
    }
    public musica()
    {
        InitializeComponent();
    }

    public void Play()
    {
        MessageBox.Show("Play");
    }

    public void Stop()
    {
        MessageBox.Show("Stop");
    }

这很好,播放和停止方法一定有问题。

//Form1.cs

    musica mus;
    public Form1()
    {
        InitializeComponent();
        mus = new musica();
    }

    private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {

        if (radioButton1.Checked == true)
        {
            mus.Play(); ;
        }
    }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)
    {
        if (radioButton2.Checked == true)
        {
            mus.Stop();
        }
    }
    public musica()
    {
        InitializeComponent();
    }

    public void Play()
    {
        MessageBox.Show("Play");
    }

    public void Stop()
    {
        MessageBox.Show("Stop");
    }
//Musica.cs

    musica mus;
    public Form1()
    {
        InitializeComponent();
        mus = new musica();
    }

    private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {

        if (radioButton1.Checked == true)
        {
            mus.Play(); ;
        }
    }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)
    {
        if (radioButton2.Checked == true)
        {
            mus.Stop();
        }
    }
    public musica()
    {
        InitializeComponent();
    }

    public void Play()
    {
        MessageBox.Show("Play");
    }

    public void Stop()
    {
        MessageBox.Show("Stop");
    }

这很好,播放和停止方法一定有问题。

回答:问题是,我在程序开始时同时打开了两个窗体,由于某种原因,如果我在Form1\u load中打开musica.cs一切正常

回答:问题是,我在节目开始时同时打开了两个表单,由于某种原因,如果我在Form1\u load中打开musica.cs,这两个表单无法相互工作

如果你点击radionButton1No,像stop()方法play()方法在Form1中不起作用。如果你点击radionButton1No,像stop()方法play()方法在Form1中不起作用。它们在musica.cs中工作正常,如果这个方法不起作用,你知道怎么做我想要的吗?它们在musica.cs中很好用,如果这个方法不起作用,你知道怎么做我想要的吗?