void OKButton_Click(object sender, RoutedEventArgs e)
        {
            ApplyFees    = false;
            LClient      = null;
            LClientFrais = new CsLclient();
            try
            {
                LClient = new CsLclient();
                if (this.Cbo_MotifRejet.SelectedItem == null)
                {
                    Message.Show("Veuillez saisir le motif", "Recouvrement");
                    return;
                }
                if (Labanque.FRAISDERETOUR == null)
                {
                    Message.Show("La banque sélectionnée n'a pas de frais paramétré", "Recouvrement");
                    return;
                }



                var messageBox = new MessageBoxControl.MessageBoxChildWindow("Attention", "Confirmez-vous la mise à jour de la demande ?", MessageBoxControl.MessageBoxButtons.YesNo, MessageBoxControl.MessageBoxIcon.Information);
                messageBox.OnMessageBoxClosed += (at, result) =>
                {
                    if (messageBox.Result == MessageBoxResult.OK)
                    {
                        List <CsLclient> ClientDuCheck = new List <CsLclient>();
                        ClientDuCheck = Lsv_DetailCheque.ItemsSource as List <CsLclient>;
                        List <CsLclient> lstFactureCheque = ObtenirChequeImpaye(ClientDuCheck);
                        if (chkrchecFee.IsChecked == true && Labanque.FRAISDERETOUR > 0)
                        {
                            lstFactureCheque.Add(ObtenirFaisChequeImpaye(Shared.ClasseMEthodeGenerique.RetourneCopyObjet <CsLclient>(ClientDuCheck.First())));
                        }

                        OKButton.IsEnabled   = false;
                        Btn_Search.IsEnabled = false;
                        prgBar.Visibility    = System.Windows.Visibility.Visible;
                        RecouvrementServiceClient proxy = new RecouvrementServiceClient(Utility.ProtocoleFacturation(), Utility.EndPoint("Recouvrement"));
                        proxy.InsertChecqueImpayesCompleted += (_, ssr) =>
                        {
                            try
                            {
                                prgBar.Visibility = System.Windows.Visibility.Collapsed;
                                if (ssr.Cancelled || ssr.Error != null)
                                {
                                    Message.ShowError("Erreur survenue lors de l'appel service.", "Erreur");
                                    OKButton.IsEnabled   = true;
                                    Btn_Search.IsEnabled = true;
                                    return;
                                }
                                if (ssr.Result == null)
                                {
                                    Message.ShowError("Erreur d'insertion des impayés du client. Réessayer svp!", "Info");
                                    OKButton.IsEnabled   = true;
                                    Btn_Search.IsEnabled = true;
                                }

                                Message.Show("Mise à jour du compte client effectuée avec succès. ", "Recouvrement");
                                InitialiserLeControle();
                            }
                            catch (Exception ex)
                            {
                                OKButton.IsEnabled   = true;
                                Btn_Search.IsEnabled = true;
                                Message.ShowError(ex, "Erreur");
                            }
                        };
                        proxy.InsertChecqueImpayesAsync(ClientDuCheck);
                    }
                    else
                    {
                        return;
                    }
                };
                messageBox.Show();
            }
            catch (Exception ex)
            {
                prgBar.Visibility = System.Windows.Visibility.Collapsed;
                Message.ShowError(ex, "Erreur");
            }
        }