private void ProcessEntityChange() { if (!entityChanged) { return; } var entitySelected = (string)ComboBoxEntities.SelectedItem; new Thread(() => { if (!string.IsNullOrEmpty(entitySelected)) { try { ShowBusy("Getting message list ..."); MessageList = new List <string>(CrmDataHelper.GetMessageNames(entitySelected, Context)); Dispatcher.Invoke(() => ComboBoxMessages.ItemsSource = MessageList); IsInitEntity = true; } catch (Exception exception) { PopException(exception); } finally { HideBusy(); } } entityChanged = false; }).Start(); }