private void gridView1_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
 {
     Selected_VisitTiming_TreatmentPlan =
         CommonViewsActions.GetSelectedRowObject <VisitTiming_TreatmentPlan>(gridView1);
 }
        private void btnDown_Click(object sender, EventArgs e)
        {
            if (Selected_VisitTiming_TreatmentPlan == null)
            {
                XtraMessageBox.Show("You should select the Treatment before Moving Up", "Notice",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1,
                                    DefaultBoolean.Default);
                return;
            }

            if (PEMRBusinessLogic.ActivePEMRObject.List_VisitTiming_TreatmentPlan == null ||
                PEMRBusinessLogic.ActivePEMRObject.List_VisitTiming_TreatmentPlan.Count == 0)
            {
                XtraMessageBox.Show("The list has no Treatment Plan", "Notice",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1,
                                    DefaultBoolean.Default);
                return;
            }

            VisitTiming_TreatmentPlan visitTimingTreatmentPlan =
                PEMRBusinessLogic.ActivePEMRObject.List_VisitTiming_TreatmentPlan.Find(
                    item => Convert.ToInt32(item.StepOrderIndex)
                    .Equals(Convert.ToInt32(Selected_VisitTiming_TreatmentPlan.StepOrderIndex)));

            if (visitTimingTreatmentPlan == null)
            {
                return;
            }

            VisitTiming_TreatmentPlan previousVisitTimingTreatmentPlan = null;

            foreach (VisitTiming_TreatmentPlan timingTreatmentPlan in PEMRBusinessLogic.ActivePEMRObject
                     .List_VisitTiming_TreatmentPlan.FindAll(
                         item => !Convert.ToInt32(item.PEMRElementStatus)
                         .Equals(Convert.ToInt32(PEMRElementStatus.Removed))).OrderByDescending(item => item.StepOrderIndex))
            {
                if (timingTreatmentPlan.Equals(visitTimingTreatmentPlan))
                {
                    break;
                }

                previousVisitTimingTreatmentPlan = timingTreatmentPlan;
            }

            if (previousVisitTimingTreatmentPlan != null)
            {
                previousVisitTimingTreatmentPlan.StepOrderIndex    = previousVisitTimingTreatmentPlan.StepOrderIndex - 1;
                previousVisitTimingTreatmentPlan.PEMRElementStatus = PEMRElementStatus.Updated;
            }
            else
            {
                return;
            }

            visitTimingTreatmentPlan.StepOrderIndex    = visitTimingTreatmentPlan.StepOrderIndex + 1;
            visitTimingTreatmentPlan.PEMRElementStatus = PEMRElementStatus.Updated;

            if (!PEMRBusinessLogic.Update_VisitTiming_TreatmentPlan(this, Active_VisitTiming_TreatmentPlan))
            {
                return;
            }

            grdTreatmentPlans.DataSource =
                PEMRBusinessLogic.ActivePEMRObject.List_VisitTiming_TreatmentPlan.FindAll(
                    item => !Convert.ToInt32(item.PEMRElementStatus)
                    .Equals(Convert.ToInt32(PEMRElementStatus.Removed))).OrderBy(item => item.StepOrderIndex);
            grdTreatmentPlans.RefreshDataSource();
            ClearControls(false);

            StepOrderIndex = PEMRBusinessLogic.ActivePEMRObject.List_VisitTiming_TreatmentPlan
                             .FindAll(item =>
                                      !Convert.ToInt32(item.PEMRElementStatus)
                                      .Equals(Convert.ToInt32(PEMRElementStatus.Removed)))
                             .OrderBy(item => item.StepOrderIndex).Count() + 1;
        }