private async Task GetBranchVersion(OfficeBranch branch, OfficeEdition officeEdition)
        {
            var modelBranch = GlobalObjects.ViewModel.Branches.FirstOrDefault(b =>
                b.Branch.ToString().ToLower() == branch.Branch.ToString().ToLower());
            if (modelBranch == null) return;

            NewVersion.SetValue(TextBoxHelper.WatermarkProperty, modelBranch.CurrentVersion);
        }
        private async Task GetBranchVersion(OfficeBranch branch, OfficeEdition officeEdition)
        {
            try
            {
                if (branch.Updated) return;
                var ppDownload = new ProPlusDownloader();
                var latestVersion = await ppDownload.GetLatestVersionAsync(branch.Branch.ToString(), officeEdition);

                var modelBranch = GlobalObjects.ViewModel.Branches.FirstOrDefault(b =>
                    b.Branch.ToString().ToLower() == branch.Branch.ToString().ToLower());
                if (modelBranch == null) return;
                if (modelBranch.Versions.Any(v => v.Version == latestVersion)) return;
                modelBranch.Versions.Insert(0, new Build() {Version = latestVersion});
                modelBranch.CurrentVersion = latestVersion;

                //ProductVersion.ItemsSource = modelBranch.Versions;
                //ProductVersion.SetValue(TextBoxHelper.WatermarkProperty, modelBranch.CurrentVersion);

                modelBranch.Updated = true;
            }
            catch (Exception)
            {

            }
        }
        private void LoadChannelView()
        {
            var configXml = GlobalObjects.ViewModel.ConfigXmlParser.ConfigurationXml;

            if (ProductUpdateSource.Text.Length == 0)
            {
                if (!string.IsNullOrEmpty(configXml.Add.SourcePath))
                {
                    ProductUpdateSource.Text = configXml.Add.SourcePath;
                }
            }

            if (!string.IsNullOrEmpty(GlobalObjects.ViewModel.DownloadFolderPath))
            {
                ProductUpdateSource.Text = GlobalObjects.ViewModel.DownloadFolderPath;
            }

            var currentBranch = GlobalObjects.ViewModel.Branches.FirstOrDefault(b => b.NewName.ToLower() == "Current".ToLower());
            var deferredBranch = GlobalObjects.ViewModel.Branches.FirstOrDefault(b => b.NewName.ToLower() == "Deferred".ToLower());
            var firstReleaseDeferred = GlobalObjects.ViewModel.Branches.FirstOrDefault(b => b.NewName.ToLower() == "FirstReleaseDeferred".ToLower());
            var firstReleaseCurrent = GlobalObjects.ViewModel.Branches.FirstOrDefault(b => b.NewName.ToLower() == "FirstReleaseCurrent".ToLower());
            if (currentBranch == null) currentBranch = new OfficeBranch();
            if (deferredBranch == null) deferredBranch = new OfficeBranch();
            if (firstReleaseDeferred == null) firstReleaseDeferred = new OfficeBranch();
            if (firstReleaseCurrent == null) firstReleaseCurrent = new OfficeBranch();

            items = new List<Channel>
            {
                new Channel()
                {
                    Name = "Current",
                    ChannelName = "Current",
                    Version = "Latest",
                    Builds = currentBranch.Versions,
                    ForeGround = "Gray",
                },
                new Channel() {
                    Name = "Deferred", 
                    ChannelName = "Deferred", 
                    Version = "Latest", 
                    ForeGround = "Gray",
                    Builds = deferredBranch.Versions
                },
                new Channel()
                {
                    Name = "First Release Deferred",
                    ChannelName = "FirstReleaseDeferred",
                    Version = "Latest",
                    ForeGround = "Gray",
                    Builds = firstReleaseDeferred.Versions
                },
                new Channel()
                {
                    Name = "First Release Current",
                    ChannelName = "FirstReleaseCurrent",
                    Version = "Latest",
                    ForeGround = "Gray",
                    Builds = firstReleaseCurrent.Versions
                }
            };

            if (configXml.Add.Branch.HasValue)
            {
                var branchName = configXml.Add.Branch.Value.ToString();
                if (branchName.ToLower() == "Business".ToLower()) branchName = "Deferred";
                if (branchName.ToLower() == "FirstReleaseBusiness".ToLower()) branchName = "FirstReleaseDeferred";

                var selectedChannel = items.FirstOrDefault(c => c.ChannelName == branchName);
                if (selectedChannel != null)
                {
                    selectedChannel.Editable = true;
                    selectedChannel.Selected = true;
                }
            }

            if (configXml.Add.ODTChannel.HasValue)
            {
                var channelName = configXml.Add.ODTChannel.Value.ToString();
                if (channelName.ToLower() == "Deferred".ToLower()) channelName = "Deferred";
                if (channelName.ToLower() == "FirstReleaseDeferred".ToLower()) channelName = "FirstReleaseDeferred";

                var selectedChannel = items.FirstOrDefault(c => c.ChannelName == channelName);
                if (selectedChannel != null)
                {
                    selectedChannel.Editable = true;
                    selectedChannel.Selected = true;
                }
            }

            lvUsers.ItemsSource = items;

            if (configXml.Add.OfficeClientEdition == OfficeClientEdition.Office32Bit)
            {
                Download32Bit.IsChecked = true;
                Download64Bit.IsChecked = false;
                Download32Bit.IsEnabled = false;
                Download64Bit.IsEnabled = true;
            }
            else
            {
                Download64Bit.IsChecked = true;
                Download32Bit.IsChecked = false;
                Download32Bit.IsEnabled = true;
                Download64Bit.IsEnabled = false;
            }


        }
        private async Task GetBranchVersion(OfficeBranch branch, OfficeEdition officeEdition)
        {
            try
            {
                var modelBranch = GlobalObjects.ViewModel.Branches.FirstOrDefault(b =>
                    b.Branch.ToString().ToLower() == branch.Branch.ToString().ToLower());
                if (modelBranch == null) return;

                UpdateTargetVersion.SetValue(TextBoxHelper.WatermarkProperty, modelBranch.CurrentVersion);
            }
            catch (Exception ex)
            {
                var strError = ex.Message;
                if (strError != null)
                {
                    
                }
            }
        }