Есть программа на winforms. По двойному клику на listview начинается проигрывание интернет радиостанции. Но так как при каждом клике форма подвисает на пару секунд, решил выполнять метод Play в другом потоке. Программа работает правильно, но если запустить программу под отладчиком, появляется исключение "InvalidOperationException".
Метод Play принимает 2 параметра - строку с url потока и float громкость. Url беру с базы через метод GetUrlFromDB(в качестве параметра передаю название радиостанции из listview и получаю по названию сам url). Решил немного модифицировать код и при клике по listview, url передаю сначала в переменную tmp типа string, а в метод Play уже передаю url из переменной tmp. Студия перестала ругаться и все работает как надо. Можно ли так делать? Просто посмотрел примеры(MSDN, stackoverflow), так там нужно писать много кода, нужно создать несколько дополнительных методов и делегаты, что для меня в данный момент немного сложновато.
Рабочий код: