Я возился с маленькой проблемой.В C # -программе у меня есть метка, цвет которой изначально черный.Пока воспроизводится MP3-файл, метка приобретает зеленый цвет, а после окончания музыки цвет метки должен быть черным.
Теперь музыка воспроизводится, но метка не получаетсяобновлено.Я использовал несколько примеров кода, но ни один из них не работает.Я знаю, что это как-то связано с событиями и вызовами, но как мне изменить этот код, чтобы он работал?В Java я использую метод SwingUtilities.InvokeLater (), но, насколько мне известно, в C # нет аналога.
delegate void LabelUpdate();
private void check()
{
new Thread(new ThreadStart(updateLabel)).Start();
playSound();
next(); // Used to set the label-color to black
}
private void updateLabel()
{
if (label1.InvokeRequired)
{
UpdateBox d = new LabelUpdate(updateLabel);
this.Invoke(d);
}
else
{
label1.ForeColor = Color.Green;
}
}
Любая помощь очень ценится!