private async Task MethodTwoCaller()
    {
        ProgressBarWindow pbWindowTwo =
            new ProgressBarWindow("Running Method Two")
        {
            Owner = this
        };

        pbWindowTwo.Show();
        await Utility.TimeConsumingMethodTwo(i => pbWindowTwo.SetProgressUpdate(i));
    }
    private async Task RunMethodCallers(object sender, MethodType type)
    {
        IProgress <int> progress;

        switch (type)
        {
        case MethodType.One:
            progress = new Progress <int>(i => pbWindowOne.SetProgressUpdate(i));
            await Task.Run(() => MethodOneCaller(progress));

            break;

        case MethodType.Two:
            progress = new Progress <int>(i => pbWindowTwo.SetProgressUpdate(i));
            await Task.Run(() => MethodTwoCaller(progress));

            break;
        }
    }
 private void worker_ProgressChangedTwo(object sender, ProgressChangedEventArgs e)
 {
     pbWindowTwo.SetProgressUpdate(e.ProgressPercentage);
 }