Я пробовал несколько разных способов сделать это, и никто из них не работает. Мне нужно получить значение tabControl1.SelectedTab.Name. Если я пытаюсь следующий код:Получить tabControl SelectedTab из другого потока с помощью Invoke
string name = tabControl1.SelectedTab.Name;
Я получаю сообщение об ошибке, что я неспособных получить доступ к объекту из другого потока. Поэтому теперь я пытаюсь использовать Invoke для извлечения значения. Один из способов, которые я нашел в Интернете и попытался, был следующим.
string name = tabControl1.Invoke((MethodInvoker)delegate { Text = tabControl1.SelectedTab.Name; })).ToString();
Это дает ошибку, объекта не задана ссылка на экземпляр объекта. Я пробовал несколько других методов, но это привело к нулевому результату.
Я попытался найти SO для ответа на этот вопрос, но не смог найти ничего, что сработало. Я был бы признателен за любую помощь или кто-то мог бы указать мне в правильном направлении. Благодаря!
Вам необходимо создать и обработать объекты геометрии непосредственно в потоке пользовательского интерфейса. Любая выполняемая обработка потоков не может напрямую обращаться к объекту геометрии, которую они должны отправлять в поток, который их создал, - поток пользовательского интерфейса. –