Вы хотите использовать Invoke или BeginInvoke для минимальной части работы, необходимой для изменения пользовательского интерфейса. Ваш «тяжелый» метод должен выполняться в другом потоке (например, через BackgroundWorker), но затем с помощью Control.Invoke / Control.BeginInvoke только для обновления пользовательского интерфейса. Таким образом, ваш поток пользовательского интерфейса будет свободно обрабатывать события пользовательского интерфейса и т. Д.
См. Мою статью для потоковой передачи для примера WinForms - хотя статья была написана ранее BackgroundWorker прибыл на место происшествия, и, боюсь, я не обновил его в этом отношении. BackgroundWorker немного упрощает обратный вызов.
На панели «Источники» отображается аналитика атрибутивных событий на странице «Источники». Если ваше пользовательское событие относится к ссылке на филиал, вы сможете просмотреть эти данные, включив столбец пользовательских событий в правом верхнем углу.
Вы также сможете просматривать поток событий в режиме Liveview, переключаясь на вкладку пользовательских событий. Данные о Liveview не сохраняются и полезны для целей разработки.
Если у вас есть дополнительные вопросы, вы можете написать по адресу Integration@branch.io.