Мой проект представляет собой игру Windows Forms с саундтреками в формате mp3, воспроизводимыми в фоновом режиме, саундтрек полностью зависит от состояния/формы игры, в которой находится игрок. «состояние игры» / новая игра, мне нужно, чтобы «Introthemetune» остановилась, чтобы другая могла играть без помех.
Я знаю, как остановить воспроизведение Introthemetune из той же формы, в которой она была создана, с помощью Introthemetune.controls.stop(). Я также безуспешно пытался получить доступ к классу из недавно созданной формы.
Код внутри моей формы LaunchScreen и экземпляр класса -
WindowsMediaPlayer Introthemetune = новый WindowsMediaPlayer();
public LaunchScreen()
{
this.Opacity = 0;
InitializeComponent();
Introthemetune.URL = "Finalised Game Soundtrack.mp3";
}
...
private void Gamescreen_Load(object sender, EventArgs e)
{
Introthemetune.controls.play();
}
Мне нужен этот код, чтобы перестать играть из-за пределов этой формы.





Если вы не можете остановить его вручную до отображения второй формы, то самый простой способ — определить Introthemetune как переменную public static в вашей форме, скажем, MainForm. Затем вы можете получить к нему доступ из любого места, например MainForm.Introthemetune.controls.stop().
Ты легенда, не понял, что классы должны быть глобальными. Огромное спасибо