Я знаю, что Winforms имеет только один поток пользовательского интерфейса, и если вам нужно обновить его, пока вы находитесь в другом потоке, вы должны использовать метод invoke.
У меня вопрос, если то, что вы делаете, не меняет Посмотрите на какой-либо элемент управления, будет ли он по-прежнему обращаться к потоку пользовательского интерфейса?
Например, в моей form1 есть регистратор, который записывает сообщения в локальный файл, который пользователи вообще не видят. Если я использую регистратор в другом потоке, скажем, напишу новое сообщение, будет ли это считаться доступом к потоку пользовательского интерфейса? Да, логгер инициализируется в form1.cs, но он не имеет визуального представления в форме вообще. Мне все еще нужно использовать invoke?
Кроме того, если у меня есть настраиваемый элемент управления, расширяющий текстовое поле. У настраиваемого элемента управления есть свойство, называемое инициализированным. Изменение этого свойства никак не влияет на внешний вид элемента управления. Затем, если я обновлю это свойство из другого потока, нужно ли мне использовать метод invoke?