Member 13721844 Ответов: 1

Недопустимая операция кросс-потока: управление "treeview" осуществляется из потока, отличного от потока, в котором оно было создано.


On client I have a tree node on right click on deploy command which publishes a file to my  server.
So on clicking the tree node I will check if the tree ode name is the same as of file name if same ok else I will try to update the object name through server reply. Which here means I have got the server reply and trying to setting the “Text” but at the time of setting the text here in my case :

BaseObject.GetNodeText(Me.QueryConfig)

 Is getting executed and throwing me error 
“Cross-thread operation not valid: Control 'Treeview' accessed from a thread other than the thread it was created on
“

If Not OverrideDefaultDisplayText Then
                    Text = BaseObject.GetNodeText(Me.QueryConfig)
                Else
                    Text = BaseObject.GUIDisplayAs
                End If

this all happens inside a method called refresh


Can someone please suggest what I need to do



Error:
Cross-thread operation not valid: Control 'Treeview' accessed from a thread other than the thread it was created on


Что я уже пробовал:

я пробовал использовать обработчики, но это не сработало для меня

1 Ответов

Рейтинг:
4

OriginalGriff

Ошибка довольно явная: вы можете получить доступ к элементам управления только из потока пользовательского интерфейса - ваш код не выполняется в потоке пользовательского интерфейса, поэтому вы не можете напрямую получить доступ к элементу управления.
Для этого вам нужно вызвать элемент управления: Контроль.Вызов Метода (Делегата) (System.Окна.Формы)[^]