private void Button_Click(object sender, RoutedEventArgs e)
 {
     if (function1_job == null || function1_job.IsCompleted)
     {
         function1_job = Task.Run(() => RetrieveProductInfo());
         using (WaitingForm wf = new WaitingForm(function1_job))
         {
             wf.ShowDialog();
         }
     }
 }
 private void Button_Click_1(object sender, RoutedEventArgs e)
 {
     if (function2_job == null || function2_job.IsCompleted)
     {
         http          = new HttpListener();
         function2_job = Task.Run(async() => await LoginToDropBoxAsync());
         //function2_job.Start();
         using (WaitingForm wf = new WaitingForm(function2_job, http))
         {
             wf.ShowDialog();
         }
     }
 }