private void BtnDeleteProc_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show("Are you sure?", "Delete Confirmation", System.Windows.MessageBoxButton.YesNo);

                if (messageBoxResult == MessageBoxResult.Yes)
                {
                    if (ObjToEditPro != null)
                    {
                        dhDocProcedures obj = MyViewModel.db.DocProcedures.Find(ObjToEditPro.IDocProceduresId);
                        if (obj != null)
                        {
                            obj.BIsActive = false;
                            MyViewModel.db.SaveChanges();
                            MyViewModel.ObjNewDoctor.DocProcedures.Remove(ObjToEditPro);
                            this.DocProcedures.ItemsSource = this.MyViewModel.ObjNewDoctor.DocProcedures;
                        }
                        else
                        {
                            MyViewModel.ObjNewDoctor.DocProcedures.Remove(ObjToEditPro);
                            this.DocProcedures.ItemsSource = this.MyViewModel.ObjNewDoctor.DocProcedures;
                        }
                    }
                    MyViewModel.ObjNewDoctor.DocProcedures = MyViewModel.GetDocProcedures();
                    Globalized.SetMsg("DOC04", DataHolders.MsgType.Info);
                    Globalized.ShowMsg(lblErrorMsg);
                }
            }
            catch (Exception ex)
            {
                // throw;
            }
        }
        //private void previewKeyDownHandler(object sender, KeyEventArgs e)
        //{
        //    if (e.Key == Key.Enter)
        //    {
        //        if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift))
        //        {
        //            //   MessageBox.Show("Shift + Enter pressed");
        //            e.Handled = true;
        //        }

        //    }else
        //    {
        //        e.Handled = false;
        //    }
        //        if (e.Key == Key.Enter || e.Key == Key.Return)
        //    {
        //        e.Handled = true;
        //        //Do your stuff
        //    }
        // }
        private void AddEditDocProcedures()
        {
            // check if it is not update
            if (this.objNewDoctor.IUpdate == 0)
            {
                foreach (dhDocProcedures item in objNewDoctor.DocProcedures)
                {
                    item.IDocid    = objNewDoctor.IDocid;
                    item.BIsActive = true;
                    MyViewModel.db.DocProcedures.Add(item);
                }
            }

            // check for update
            if (this.objNewDoctor.IUpdate == 1)
            {
                // check for removel

                // check existing investigation
                ObservableCollection <dhDocProcedures> crntInv = MyViewModel.db.DocProcedures.Where(x => x.IDocid == objNewDoctor.IDocid && x.BIsActive == true).ToObservableCollection();
                foreach (dhDocProcedures item in objNewDoctor.DocProcedures)
                {
                    item.IDocid = objNewDoctor.IDocid;
                    // make this investigation active
                    item.BIsActive = true;
                    if (crntInv.Select(x => x.IDocProceduresId == item.IDocProceduresId).FirstOrDefault() == false)
                    {
                        MyViewModel.db.DocProcedures.Add(item);
                    }
                    else
                    {
                        dhDocProcedures tempDoinv = this.MyViewModel.db.DocProcedures.Find(item.IDocProceduresId);
                        if (tempDoinv != null)
                        {
                            tempDoinv = item;
                        }
                    }
                    // if(crntInv.fi)
                }
            }
        }
        private void TxtIProceduresID_TargetUpdated(object sender, System.Windows.Data.DataTransferEventArgs e)
        {
            if (this.MyViewModel == null)
            {
                return;
            }
            int IProId;

            int.TryParse(txtIProceduresID.Text.ToString(), out IProId);


            dhProcedure ObjInv = this.MyViewModel.db.Procedures.Where(I => I.BIsActive == true && I.IProcedureId == IProId).FirstOrDefault();

            //iFacede.GetdhItem(Globalized.ObjDbName, new dhItems { IItemID = Convert.ToInt32(ItemList.SelectedValue) });
            //ObjDhItem.IQuantity = 0;
            // creat the new object of doctor investigation
            if (ObjInv == null)
            {
                return;
            }

            dhDocProcedures objDocProcedure = new dhDocProcedures();

            objDocProcedure.IProcedureId      = IProId;
            objDocProcedure.IDocid            = this.MyViewModel.ObjNewDoctor.IDocid;
            objDocProcedure.VProcedureName    = ObjInv.VProcedureName;
            objDocProcedure.VProcedureDesc    = ObjInv.VProcedureDesc;
            objDocProcedure.IProcedureCharges = ObjInv.IProCharges;
            this.MyViewModel.ObjNewDoctor.DocProcedures.Add(objDocProcedure);

            // update the source
            this.DocProcedures.ItemsSource = this.MyViewModel.ObjNewDoctor.DocProcedures;


            // clear the source
            // this.InvestigationList.SelectedItem = null;
            // this.InvestigationList.SelectedValue = "";

            //this.InvestigationList
        }
 private void DocProcedures_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     ObjToEditPro = DocProcedures.SelectedItem as dhDocProcedures;
 }