private void RefreshCodeClick(object sender, RoutedEventArgs e) { Task.Factory.StartNew(() => { var image = LoginApi.GetCodeUrlStream(); this.Dispatcher.Invoke(() => { try { BitmapImage bitmapImage = new BitmapImage(); bitmapImage.BeginInit(); bitmapImage.StreamSource = image; bitmapImage.CacheOption = BitmapCacheOption.OnLoad; bitmapImage.EndInit(); codeImg.Source = bitmapImage; } catch (Exception ex) { } }); }); }