Advertisement
Guest User

Untitled

a guest
Nov 26th, 2014
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. private void OpenLoadingWindow()
  2. {
  3. loadingWindow = new LoadingView();
  4. loadingWindow.Closed += new EventHandler(LoadingWindow_Closed);
  5.  
  6. _go = true;
  7. loadingWindow.ShowDialog();
  8. }
  9.  
  10. public void OpenLoadingWindowInNewThread()
  11. {
  12. thread = new Thread(x => OpenLoadingWindow());
  13. thread.IsBackground = true;
  14. thread.SetApartmentState(ApartmentState.STA);
  15. thread.Start();
  16.  
  17. lock (_locker)
  18. {
  19. Monitor.Pulse(_locker);
  20. }
  21. }
  22.  
  23. public void CloseLoadingWindow()
  24. {
  25. lock (_locker)
  26. while (!_go)
  27. Monitor.Wait (_locker);
  28.  
  29. if (loadingWindow != null)
  30. {
  31. loadingWindow.Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)(() =>
  32. {
  33. _go = false;
  34. loadingWindow.Close();
  35. loadingWindow = null;
  36. }));
  37. }
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement