void LoadData()
        {
            try
            {
                decimal _total_p = 0;
                Sale_Header_Controller _Product_Controller = new Sale_Header_Controller();
                c_list_Product_Buy            = _Product_Controller.Get_Product_By_Sale_Header(c_Sale_Header_Info.SoHoaDon);
                dgrProduct_Detail.ItemsSource = c_list_Product_Buy;
                c_hs_Product = new Hashtable();

                foreach (Product_Info item in c_list_Product_Buy)
                {
                    item.Change_Type = Convert.ToInt16(Change_Product_Type.Normal);
                    item.Total_Price = item.DonGia_By_Type * item.Count_Sale_By_Header;
                    _total_p        += item.DonGia_By_Type * item.Count_Sale_By_Header;
                    c_hs_Product[item.Product_Code.ToUpper()] = c_Product_Info_Search;
                }

                txtTotalPrice.Text = _total_p.ToString();

                if (c_Sale_Header_Info.SalesType == Convert.ToInt16(ThuChi_Type.Ban_Buon))
                {
                    this.Title = "Hóa đơn bán buôn " + c_Sale_Header_Info.SoHoaDon;
                }
                else if (c_Sale_Header_Info.SalesType == Convert.ToInt16(ThuChi_Type.Ban_Le))
                {
                    this.Title = "Hóa đơn bán lẻ " + c_Sale_Header_Info.SoHoaDon;
                }

                txtCustomer_Name.Text = c_Sale_Header_Info.Customer_Name;
                txtDiscount.Text      = c_Sale_Header_Info.Discount.ToString();
                txtPayPrice.Text      = c_Sale_Header_Info.Total_Amount.ToString();
                txtSaleDate.Text      = c_Sale_Header_Info.Sale_Date.ToString("dd/MM/yyyy");
                txtShipPrice.Text     = c_Sale_Header_Info.Ship_Price.ToString();
                //txtPhone.Text = c_Sale_Header_Info.
                if (c_Sale_Header_Info.Per_Discont != 0)
                {
                    txtPerDiscount.Text = c_Sale_Header_Info.Per_Discont.ToString("###,###,0") + "%";
                }
                else
                {
                    txtPerDiscount.Text = c_Sale_Header_Info.Per_Discount_Price.ToString();
                }
            }
            catch (Exception ex)
            {
                CommonData.log.Error(ex.ToString());
            }
        }
        void Print()
        {
            try
            {
                Sale_Header_Info _Sale_Header_Info = (Sale_Header_Info)dgrSaleHeader.SelectedItem;
                if (_Sale_Header_Info == null)
                {
                    return;
                }

                List <Product_Info> _list_Product_Buy = c_Product_Controller.Get_Product_By_Sale_Header(_Sale_Header_Info.SoHoaDon);

                #region Kết xuất

                FlexCel.Report.FlexCelReport flcReport = new FlexCel.Report.FlexCelReport();
                string    _path          = CommonData.ExcelDesignFilePath;
                string    _fileExcelName = "Hoa_Don_Ban_Buon.xls";
                DataSet   ds_all         = new DataSet();
                DataTable _dt            = ConvertData.ConvertToDatatable(_list_Product_Buy);
                _dt.Columns.Add("STT");
                int index = 1;
                foreach (DataRow item in _dt.Rows)
                {
                    item["STT"] = index;
                    index++;
                }

                ds_all.Tables.Add(_dt);
                ds_all.Tables[0].TableName = "BanBuon";

                if (ds_all.Tables.Count <= 0)
                {
                    Mouse.OverrideCursor = null;
                    NoteBox.Show("Không có dữ liệu để kết xuất", "Thông báo", NoteBoxLevel.Note);
                    return;
                }
                if (ds_all.Tables[0].Rows.Count <= 0)
                {
                    Mouse.OverrideCursor = null;
                    NoteBox.Show("Không có dữ liệu để kết xuất", "Thông báo", NoteBoxLevel.Note);
                    return;
                }

                _path += _fileExcelName;

                CommonFunction.SetValueExportByDataTable(ref flcReport, ds_all);

                CommonFunction.SetValueExportByString(ref flcReport, "SoHoaDon", _Sale_Header_Info.SoHoaDon);
                CommonFunction.SetValueExportByString(ref flcReport, "Customer", _Sale_Header_Info.Customer_Name);
                CommonFunction.SetValueExportByString(ref flcReport, "Address", _Sale_Header_Info.Address);

                string _tienBangChu = ConvertData.ConvertMoneyToStr(Convert.ToDouble(_Sale_Header_Info.Total_Amount));
                CommonFunction.SetValueExportByString(ref flcReport, "TienBangChu", _tienBangChu);

                System.Windows.Forms.SaveFileDialog saveReport = new System.Windows.Forms.SaveFileDialog();
                saveReport.Filter = "Excel files (*.xls)|*.xls";
                if (saveReport.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    CommonFunction.ExportExcel(flcReport, _path, saveReport);
                }
                #endregion
            }
            catch (Exception ex)
            {
                CommonData.log.Error(ex.ToString());
            }
        }