private void btnConfirm_Click(object sender, RoutedEventArgs e)
        {
            Int32.TryParse(txtPassword.Password.ToString(), out passWord);
            controlAccount = ControlIssuesAccountController.FindSecurityCode(passWord);
            if (controlAccount == null)
            {
                MessageBox.Show(string.Format("Wrong Security Code !"), "Infor", MessageBoxButton.OK, MessageBoxImage.Error);
                txtPassword.Focus();
                txtPassword.SelectAll();
                return;
            }

            if (modeClearOrSave == 1)
            {
                MessageBoxResult result = MessageBox.Show("Confirm Clear!", "Infor", MessageBoxButton.YesNo, MessageBoxImage.Question);
                if (result == MessageBoxResult.No)
                {
                    return;
                }

                poRepackingReLoadList.RemoveAll(r => r.ProductNo == currentPO.ProductNo);
                bool update = PORepackingController.Update(currentPO.ProductNo);

                ReLoad();
            }

            if (modeClearOrSave == 2)
            {
                poRepackingInsertList = dgPORepacking.Items.OfType <PORepackingModel>().ToList();
                if (poRepackingInsertList.Count == 0)
                {
                    MessageBox.Show("PO Repacking List Is Empty !", "Infor", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }

                MessageBoxResult result = MessageBox.Show("Confirm Save?", "Infor", MessageBoxButton.YesNo, MessageBoxImage.Question);
                if (result == MessageBoxResult.No)
                {
                    return;
                }

                var poDBList = poRepackingLoadList.Select(s => s.ProductNo).ToList();
                poRepackingInsertList.RemoveAll(r => poDBList.Contains(r.ProductNo));

                foreach (var poRepacking in poRepackingInsertList)
                {
                    PORepackingController.Insert(poRepacking);
                    dgPORepacking.Dispatcher.Invoke((Action)(() =>
                    {
                        dgPORepacking.SelectedItem = poRepacking;
                        dgPORepacking.ScrollIntoView(poRepacking);
                    }));
                }
                MessageBox.Show(string.Format("{0} PO Imported !", poRepackingInsertList.Count), "Result", MessageBoxButton.OK, MessageBoxImage.Information);

                ReLoad();
            }
        }
 private void bwLoad_DoWork(object sender, DoWorkEventArgs e)
 {
     poRepackingLoadList = PORepackingController.GetAll();
 }