title: How Make my project sleep without Thread.Sleep()?
body: <p>I have WPF project. I am working with GMap.Net. 
  My project is about to show the buses location over the city. For a demo version I want to have list of points and change the marker position every 5 seconds. 
  There are 2 problem. First of all I should mention that I do not have internet connection when presenting the demo version and the second one is that when I try to Sleep the Map doesn't show anything until all Thread.Sleeps() executed.</p>
  
  <pre><code>PointLatLng[] points = new PointLatLng[]
  {
  new PointLatLng(34.633400, 50.867886),
  new PointLatLng(34.632469, 50.866215),
  new PointLatLng(34.631213, 50.864210),
  new PointLatLng(34.629314, 50.861153),
  new PointLatLng(34.626737, 50.857140)
  };
  
  int i = -1;
  do
  {
  i++;
  
  GMapMarker marker = new GMapMarker(points[i]);
  marker.Shape = new Control.Marker(0, 0, 65, 90);
  MainMap.Markers.Add(marker);
  
  System.Threading.Thread.Sleep(5000);
  
  MainMap.Markers.RemoveAt(0);
  
  if (i == 3) break; ;
  } while (true);
  </code></pre>
  
  <p>After the execution of Do-While loop the Map will show.
  I try:</p>
  
  <pre><code>Task.Factory();
  </code></pre>
  
  <p>And</p>
  
  <pre><code> BackgroundWorker
  </code></pre>
  
  <p>but I got the error because my code contains UI Controls.
  Is there any solution?</p>