private void MainTabControl_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (StartView.RestartWorkflow == null)
            {
                StartView.RestartWorkflow += RestartWorkflow;
            }

            e.Handled = false;

            if (GlobalObjects.ViewModel.BlockNavigation)
            {
                MainTabControl.SelectedIndex = _cacheIndex;
                return;
            }

            ThemeManager.TransitionsEnabled = MainTabControl.SelectedIndex != 4;
            ThemeManager.TransitionsEnabled = false;

            TabItem tabItem = null;

            if (MainTabControl.SelectedIndex > -1)
            {
                tabItem            = ((TabItem)MainWindowTabs.Items[MainTabControl.SelectedIndex]);
                tabItem.IsSelected = true;
                tabItem.IsEnabled  = true;
            }

            if (_cacheIndex != MainTabControl.SelectedIndex)
            {
                if (tabItem != null && !GlobalObjects.ViewModel.ResetXml)
                {
                    if (!tabItem.Content.GetType().ToString().ToLower().Contains("productview"))
                    {
                        ProductView.UpdateXml();
                    }
                    if (!tabItem.Content.GetType().ToString().ToLower().Contains("display"))
                    {
                        DisplayView.UpdateXml();
                    }
                    if (!tabItem.Content.GetType().ToString().ToLower().Contains("update"))
                    {
                        UpdateView.UpdateXml();
                    }
                }
                GlobalObjects.ViewModel.ResetXml = false;

                _cacheIndex = MainWindowTabs.SelectedIndex;
            }
        }