/// <summary>
        /// Carga los booking Deposits
        /// </summary>
        /// <param name="GuestID"></param>
        /// <param name="RefundID"></param>
        /// <history>
        /// [vipacheco] 07/Junio/2016 Created
        /// </history>
        private async void Load_BookingDeposits(int GuestID = -1, int RefundID = -1)
        {
            //if (_lstRefund.Count > 0)
            //{
            int guestID = 0, refundID = 0, folio = 0;

            // Si no esta asociado a un Guest
            if (!HasGuest())
            {
                // Obtenemos el selected del grid
                if (grdRefund.SelectedItem == null && grdRefund.Items.Count > 0)
                {
                    grdRefund.SelectedIndex = 0;
                }
                DepositsRefund selected = grdRefund.SelectedItem as DepositsRefund;
                guestID  = selected.guID;
                refundID = selected.drID;
                folio    = selected.drFolio;
            }
            else
            {
                guestID = _GuestID;
            }

            // Checamos si envio refund
            if (RefundID > 0)
            {
                refundID = RefundID;
            }

            txtFolio.Text = $"{folio}";
            txtID.Text    = $"{guestID}";

            // Ejecutamos el procedimiento
            lstDeposits = await BRBookingDeposits.GetDepositsToRefund(guestID, refundID);

            // Cargamos la informacion al Grid
            CollectionViewSource _dsDeposits = ((CollectionViewSource)(this.FindResource("dsDeposits")));

            _dsDeposits.Source = lstDeposits;

            // Verificamos si aun quedan Depositos por guardar
            var depositsID = grdDeposits.Items.Cast <DepositToRefund>().ToList();

            if (depositsID.Any(x => !x.bdRefund.Value))
            {
                Controls_Mode(true, false, false, false, true, false);
            }
            else
            {
                Controls_Mode(false, false, depositsID.Any(x => x.bdRefund.Value) ? true : false, false, true, ValidateGuest: true);
            }
            //}
        }
        /// <summary>
        /// Carga el item seleccionado
        /// </summary>
        /// <history>
        /// [vipacheco] 07/Junio/2016 Created
        /// </history>
        private void Load_Selected()
        {
            DepositsRefund Selected = grdRefund.SelectedItem as DepositsRefund;

            if (Selected == null)
            {
                UIHelper.ShowMessage("Select at least one Refund.", MessageBoxImage.Information, "Deposits Refund");
                return;
            }

            Load_BookingDeposits(Selected.guID, Selected.drID);
        }
        /// <summary>
        /// Carga la informacion del refund seleccionado
        /// cambia de fila con el boton tab
        /// </summary>
        /// <history>
        /// [vipacheco] 07/Junio/2016 Created
        /// </history>
        private void Row_KeyDown(object sender, KeyEventArgs e)
        {
            bool blnHandled = false;

            switch (e.Key)
            {
            case Key.Enter:
            {
                DepositsRefund Selected = grdRefund.SelectedItem as DepositsRefund;
                Load_BookingDeposits(Selected.guID, Selected.drID);

                blnHandled = true;
                break;
            }
            }

            e.Handled = blnHandled;
        }