private void butAdd_Click(object sender, System.EventArgs e)
        {
            Referral refCur        = new Referral();
            bool     referralIsNew = true;

            if (MsgBox.Show(this, MsgBoxButtons.YesNo, "Is the referral source an existing patient?"))
            {
                FormPatientSelect FormPS = new FormPatientSelect();
                FormPS.SelectionModeOnly = true;
                FormPS.ShowDialog();
                if (FormPS.DialogResult != DialogResult.OK)
                {
                    return;
                }
                refCur.PatNum = FormPS.SelectedPatNum;
                Referral referral = Referrals.GetFirstOrDefault(x => x.PatNum == FormPS.SelectedPatNum);
                if (referral != null)
                {
                    refCur        = referral;
                    referralIsNew = false;
                }
            }
            FormReferralEdit FormRE2 = new FormReferralEdit(refCur);          //the ReferralNum must be added here

            FormRE2.IsNew = referralIsNew;
            FormRE2.ShowDialog();
            if (FormRE2.DialogResult == DialogResult.Cancel)
            {
                return;
            }
            if (IsSelectionMode)
            {
                if (IsDoctorSelectionMode && !FormRE2.RefCur.IsDoctor)
                {
                    MsgBox.Show(this, "Please select a doctor referral.");
                    gridMain.SetSelected(false);                    //Remove selection to prevent caching issue on OK click.  This line is an attempted fix.
                    FillTable();
                    return;
                }
                SelectedReferral = FormRE2.RefCur;
                DialogResult     = DialogResult.OK;
                return;
            }
            else
            {
                FillTable();
                for (int i = 0; i < listRef.Count; i++)
                {
                    if (listRef[i].ReferralNum == FormRE2.RefCur.ReferralNum)
                    {
                        gridMain.SetSelected(i, true);
                    }
                }
            }
        }